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,172 @@
/* Metro module 9038; source: modules/guild_scheduled_events/utils/EditGuildEventUtils.tsx; dependencies: [1226, 1385, 9039, 9042, 2] */
function _fun70339(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#70339, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9223:6, offset: 0x01cf684a, size: 298 bytes, params: 8, frame: 21
const env0_0 = require;
const closure = recurrenceRuleToServer;
const closure2 = recurrenceRuleFromServer;
const eventExceptionsToServer = function(a0) {
return a0.map(_fun70343);
};
const closure3 = function(a0) {
return a0 != null && 'id' in a0;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const authenticationStore = importDefault(1226) /* metro dependency 1226: AuthenticationStore */;
const guildScheduledEventsConstantsModule = require(1385) /* metro dependency 1385: GuildScheduledEventsConstants */;
const env0_3 = guildScheduledEventsConstantsModule.GuildScheduledEventEntityTypes;
const env0_4 = guildScheduledEventsConstantsModule.GuildScheduledEventStatus;
const env0_5 = guildScheduledEventsConstantsModule.GuildScheduledEventPrivacyLevel;
const env0_6 = guildScheduledEventsConstantsModule.FAKE_EVENT_ID;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_scheduled_events/utils/EditGuildEventUtils.tsx');
exports.EditGuildEventScreens = {CHANNEL_SELECTOR: 'ChannelSelector', DETAILS: 'Details', PREVIEW: 'Preview'};
exports.isEditingEvent = function(a0) {
var Boolean = global.Boolean;
return Boolean(a0?.id);
};
exports.recurrenceRuleToServer = closure;
exports.recurrenceRuleFromServer = closure2;
exports.isExistingGuildEvent = closure3;
exports.convertToFakeGuildEvent = convertToFakeGuildEvent;
exports.getInitialGuildEventData = getInitialGuildEventData;
}
function recurrenceRuleToServer(a0) { // fn#70340, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9223:340, offset: 0x01cf6974, size: 171 bytes, params: 2, frame: 8
var length;
var byMonthDay;
var r0;
var value3;
const value = null;
if (value == a0) {
r0 = value;
} else {
byMonthDay = a0.byMonthDay;
length = value == byMonthDay ? undefined : byMonthDay.length;
value3 = 0;
byMonthDay = (value != length ? length : value3) > value3 ? a0.byMonthDay : value;
r0 = {start: a0.start, end: a0.end, frequency: a0.frequency, interval: a0.interval, by_weekday: a0.byWeekday,
by_n_weekday: a0.byNWeekday, by_month: a0.byMonth, by_month_day: byMonthDay, by_year_day: a0.byYearDay,
count: a0.count};
}
return r0;
}
function recurrenceRuleFromServer(a0) { // fn#70341, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9223:665, offset: 0x01cf6a1f, size: 216 bytes, params: 2, frame: 16
var r3;
var r0;
var object2;
var Date;
var start;
var value2;
var date;
var end;
const value = null;
if (value == a0) {
r0 = value;
} else {
object2 = {};
Date = global.Date;
start = a0.start;
value2 = Object.create(Date.prototype, {constructor: {value: Date}});
date = new Date();
object2.start = (date instanceof Object ? date : value2).toISOString();
end = a0.end;
if (value != end) {
Date = global.Date;
end = a0.end;
date = new Date();
date = date.toISOString();
r3 = date;
} else {
r3 = value;
}
object2.end = r3;
object2.frequency = a0.frequency;
object2.interval = a0.interval;
object2.byWeekday = a0.by_weekday;
object2.byNWeekday = a0.by_n_weekday;
object2.byMonth = a0.by_month;
object2.byMonthDay = a0.by_month_day;
object2.byYearDay = a0.by_year_day;
object2.count = a0.count;
r0 = object2;
}
return r0;
}
function eventExceptionsToServer(a0) { // fn#70342, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9223:987, offset: 0x01cf6af7, size: 24 bytes, params: 2, frame: 11
return a0.map(function(a0) {
return {event_exception_id: a0.eventExceptionId, event_id: a0.eventId, guild_id: a0.guildId,
scheduled_start_time: a0.scheduledStartTime, scheduled_end_time: a0.scheduledEndTime,
is_canceled: a0.isCanceled};
});
}
function convertToFakeGuildEvent({name, description, privacyLevel, channelId, scheduledStartTime, scheduledEndTime, entityType, entityMetadata, image, recurrenceRule, eventExceptions}, a1, a2) { // fn#70346, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9223:1656, offset: 0x01cf6b90, size: 241 bytes, params: 4, frame: 23
const value = a2;
const object2 = {};
object2.id = value ?? FAKE_EVENT_ID;
object2.name = name;
object2.description = description ?? null;
object2.privacy_level = privacyLevel;
object2.scheduled_start_time = scheduledStartTime;
object2.scheduled_end_time = scheduledEndTime;
object2.entity_type = entityType;
object2.entity_metadata = entityMetadata ?? null;
object2.image = image ?? undefined;
object2.channel_id = channelId;
object2.guild_id = a1;
object2.creator_id = AuthenticationStore.getId();
const SCHEDULED = GuildScheduledEventStatus.SCHEDULED;
object2.status = SCHEDULED;
object2.recurrence_rule = recurrenceRuleToServer(recurrenceRule);
object2.guild_scheduled_event_exceptions = eventExceptionsToServer(eventExceptions);
return object2;
}
function getInitialGuildEventData(a0, a1) { // fn#70347, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9223:2262, offset: 0x01cf6c81, size: 587 bytes, params: 3, frame: 17
const object2 = {};
let value = undefined;
const name = a0 == null ? value : a0.name;
const value2 = '';
object2.name = name ?? value2;
object2.privacyLevel = (a0 == null ? value : a0.privacy_level) ?? GuildScheduledEventPrivacyLevel.GUILD_ONLY;
object2.description = (a0 == null ? value : a0.description) ?? value2;
object2.scheduledStartTime = (a0 == null ? value : a0.scheduled_start_time) ?? (require(9039) /* metro dependency 9039: ScheduleUtils */).getInitialEventStartDate().toISOString();
object2.entityType = (a0 == null ? value : a0.entity_type) ?? GuildScheduledEventEntityTypes.NONE;
object2.entityMetadata = (a0 == null ? value : a0.entity_metadata) ?? value;
object2.channelId = a0 == null ? value : a0.channel_id;
object2.creatorId = a0 == null ? value : a0.creator_id;
object2.image = a0 == null ? value : a0.image;
object2.scheduledEndTime = a0 == null ? value : a0.scheduled_end_time;
object2.recurrenceRule = recurrenceRuleFromServer(a0 == null ? value : a0.recurrence_rule);
object2.eventExceptions = ((a0 == null ? value : a0.guild_scheduled_event_exceptions) ?? []).map(function(a0) {
return {eventExceptionId: a0.event_exception_id, eventId: a0.event_id, guildId: a0.guild_id,
scheduledStartTime: a0.scheduled_start_time, scheduledEndTime: a0.scheduled_end_time,
isCanceled: a0.is_canceled};
});
if (isExistingGuildEvent(a0)) {
if ((a0 == null ? value : a0.entity_type) === GuildScheduledEventEntityTypes.EXTERNAL) {
value = require(9042) /* metro dependency 9042: EntityUtils */;
value = value.getLocationFromEvent(a0);
if (value != null) {
object2.entityMetadata = {location: value};
}
} else if (object2.channelId == null && a1 != null) {
object2.channelId = a1.id;
if (a1.isGuildStageVoice()) {
object2.entityType = GuildScheduledEventEntityTypes.STAGE_INSTANCE;
} else if (a1.isGuildVoice()) {
object2.entityType = GuildScheduledEventEntityTypes.VOICE;
}
}
} else if (object2.channelId == null && a1 != null) {
object2.channelId = a1.id;
if (a1.isGuildStageVoice()) {
object2.entityType = GuildScheduledEventEntityTypes.STAGE_INSTANCE;
} else if (a1.isGuildVoice()) {
object2.entityType = GuildScheduledEventEntityTypes.VOICE;
}
}
return object2;
}
@@ -0,0 +1,30 @@
/* Metro module 9042; source: modules/guild_scheduled_events/utils/EntityUtils.tsx; dependencies: [1379, 1385, 2] */
function _fun70655(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#70655, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9227:6, offset: 0x01d0283d, size: 190 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const guildScheduledEventsConstantsModule = require(1385) /* metro dependency 1385: GuildScheduledEventsConstants */;
const env0_1 = guildScheduledEventsConstantsModule.GuildScheduledEventEntityTypes;
const env0_2 = guildScheduledEventsConstantsModule.EntityChannelTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_scheduled_events/utils/EntityUtils.tsx');
exports.getChannelFromEvent = getChannelFromEvent;
exports.getLocationFromEvent = function(a0) {
return _getLocationFromEvent(a0.entity_type, a0.entity_metadata);
};
exports.getLocationFromEventData = function(a0) {
return _getLocationFromEvent(a0.entityType, a0.entityMetadata);
};
exports.getChannelTypeFromEntity = function(a0) {
return a0 === GuildScheduledEventEntityTypes.VOICE ? EntityChannelTypes[a0] : a0 !== GuildScheduledEventEntityTypes.STAGE_INSTANCE ? undefined : EntityChannelTypes[a0];
};
}
function _getLocationFromEvent(a0, a1) { // fn#70656, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9227:174, offset: 0x01d028fb, size: 55 bytes, params: 3, frame: 3
const EXTERNAL = GuildScheduledEventEntityTypes.EXTERNAL;
return a0 === EXTERNAL && a1 != null && 'location' in a1 ? a1.location : null;
}
function getChannelFromEvent(a0) { // fn#70657, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9227:394, offset: 0x01d02932, size: 77 bytes, params: 2, frame: 13
return a0.entity_type in EntityChannelTypes && a0.channel_id != null && ChannelStore.getChannel(a0.channel_id) != null ? ChannelStore.getChannel(a0.channel_id) : undefined;
}
@@ -0,0 +1,93 @@
/* Metro module 9043; source: modules/guild_scheduled_events/utils/GuildEventRsvpUtils.tsx; dependencies: [1226, 4117, 1385, 1244, 9044, 9045, 9039, 2] */
function _fun70661(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#70661, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9228:6, offset: 0x01d029ed, size: 232 bytes, params: 8, frame: 20
var object2;
const env0_0 = require;
const closure = function(a0, a1) {
return GuildScheduledEventStore.getRsvp(a0, a1, AuthenticationStore.getId());
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const authenticationStore = importDefault(1226) /* metro dependency 1226: AuthenticationStore */;
const guildScheduledEventStore = importDefault(4117) /* metro dependency 4117: GuildScheduledEventStore */;
const guildScheduledEventsConstantsModule = require(1385) /* metro dependency 1385: GuildScheduledEventsConstants */;
const env0_4 = guildScheduledEventsConstantsModule.GuildScheduledEventUserResponses;
const env0_5 = guildScheduledEventsConstantsModule.GuildScheduledEventStatusDone;
object2 = {SERIES: 0};
object2[0] = 'SERIES';
object2.RECURRENCE = 1;
object2[1] = 'RECURRENCE';
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_scheduled_events/utils/GuildEventRsvpUtils.tsx');
exports.getExistingRsvp = closure;
exports.ResponseOptions = object2;
exports.getResponseOptions = getResponseOptions;
exports.handleRsvp = handleRsvp;
}
function getResponseOptions() { // fn#70663, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9228:522, offset: 0x01d02aff, size: 158 bytes, params: 1, frame: 17
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const {SERIES, RECURRENCE} = env0_6;
return [{name: Reflect.apply(string, intl, [t.uoorxi]), value: SERIES}, {name: intl.string(t.lwZCFT),
value: RECURRENCE}];
}
function handleRsvp({eventId, recurrenceId, guildId, updateRsvp, openRsvpPicker, onRsvp}) { // fn#70664, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9228:698, offset: 0x01d02b9d, size: 443 bytes, params: 2, frame: 29
var scheduled_start_time;
var r12;
var r9;
var value4;
var eventException;
var moduleValue2;
var startTime;
var moduleValue3;
var getRecurrenceStatus;
var Date;
var value6;
var date;
var getExistingRsvpBinding;
var id;
var existingRsvpBinding;
const guildScheduledEvent = GuildScheduledEventStore.getGuildScheduledEvent(eventId);
if (guildScheduledEvent != null) {
value4 = undefined;
eventException = (require(9044) /* metro dependency 9044: useEventException */).getEventException(recurrenceId,
eventId);
moduleValue2 = require(9045) /* metro dependency 9045: useEventSchedule */;
startTime = moduleValue2.getEventSchedule(guildScheduledEvent, recurrenceId).startTime;
scheduled_start_time = guildScheduledEvent == null ? value4 : guildScheduledEvent.scheduled_start_time;
if (scheduled_start_time != null) {
moduleValue3 = require(9039) /* metro dependency 9039: ScheduleUtils */;
getRecurrenceStatus = moduleValue3.getRecurrenceStatus;
Date = global.Date;
scheduled_start_time = guildScheduledEvent == null ? value4 : guildScheduledEvent.scheduled_start_time;
value6 = Object.create(Date.prototype, {constructor: {value: Date}});
date = new Date();
r12 = Reflect.apply(getRecurrenceStatus, moduleValue3, [eventException, startTime,
date instanceof Object ? date : value6]);
} else {
r12 = null;
}
r9 = r12 == null ? recurrenceId ?? (require(9039) /* metro dependency 9039: ScheduleUtils */).getNextRecurrenceIdInEvent(guildScheduledEvent) : GuildScheduledEventStatusDone.has(r12) ? null : recurrenceId ?? (require(9039) /* metro dependency 9039: ScheduleUtils */).getNextRecurrenceIdInEvent(guildScheduledEvent);
getExistingRsvpBinding = getExistingRsvp;
id = guildScheduledEvent.id;
existingRsvpBinding = getExistingRsvpBinding(id);
id = guildScheduledEvent.id;
if (r9 == null) {
updateRsvp(eventId, null, guildId,
existingRsvpBinding != null ? GuildScheduledEventUserResponses.UNINTERESTED : GuildScheduledEventUserResponses.INTERESTED);
if (onRsvp != null) {
onRsvp();
}
} else if (getExistingRsvpBinding(id, r9) != null) {
updateRsvp(eventId, r9, guildId,
existingRsvpBinding != null ? GuildScheduledEventUserResponses.INTERESTED : GuildScheduledEventUserResponses.UNINTERESTED);
if (onRsvp != null) {
onRsvp();
}
} else {
openRsvpPicker(guildScheduledEvent, r9);
}
}
}
@@ -0,0 +1,659 @@
/* Metro module 9039; source: modules/guild_scheduled_events/utils/ScheduleUtils.tsx; dependencies: [1878, 9040, 1385, 9041, 1244, 3738, 3826, 21, 672, 22, 2] */
function _fun70349(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#70349, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:6, offset: 0x01cf6f13, size: 1556 bytes, params: 8, frame: 28
const env0_0 = require;
const closure = function(a0, a1) {
var value = a1 - a0.minutes() % a1;
value = importDefault(dependencyMap[5])(a0).add(value, 'minutes');
return value.seconds(0);
};
const closure2 = convertJSDayToRRuleDay;
const closure3 = function(a0) {
return _getSchedule(a0.scheduled_start_time, a0.scheduled_end_time);
};
const closure4 = function(a0, a1) {
return a0 == null || a1 == null ? a0 == null && a1 == null : a0.isSame(a1);
};
const closure5 = getRRule;
const closure6 = function(a0) {
var value = null;
return value == a0.recurrence_rule ? value : new global.Date();
};
const closure7 = getValidWeekdays;
const closure8 = getValidWeekends;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const env0_4 = (require(9040) /* metro dependency 9040: CreateGuildScheduledEventConstants */).RecurrenceOptions;
const guildScheduledEventsConstantsModule = require(1385) /* metro dependency 1385: GuildScheduledEventsConstants */;
const env0_5 = guildScheduledEventsConstantsModule.GuildScheduledEventEntityTypes;
const env0_6 = guildScheduledEventsConstantsModule.GuildScheduledEventStatus;
const RRule = (require(9041) /* metro dependency 9041 */).RRule;
let MO = RRule.MO;
items = [MO.weekday];
let TU = RRule.TU;
items[1] = TU.weekday;
let WE = RRule.WE;
items[2] = WE.weekday;
let TH = RRule.TH;
items[3] = TH.weekday;
let FR = RRule.FR;
items[4] = FR.weekday;
let SU = RRule.SU;
items = [SU.weekday];
MO = RRule.MO;
items[1] = MO.weekday;
TU = RRule.TU;
items[2] = TU.weekday;
WE = RRule.WE;
items[3] = WE.weekday;
TH = RRule.TH;
items[4] = TH.weekday;
TU = RRule.TU;
items = [TU.weekday];
WE = RRule.WE;
items[1] = WE.weekday;
TH = RRule.TH;
items[2] = TH.weekday;
FR = RRule.FR;
items[3] = FR.weekday;
let SA = RRule.SA;
items[4] = SA.weekday;
SA = RRule.SA;
items = [SA.weekday];
SU = RRule.SU;
items[1] = SU.weekday;
FR = RRule.FR;
items = [FR.weekday];
SA = RRule.SA;
items[1] = SA.weekday;
SU = RRule.SU;
items = [SU.weekday];
MO = RRule.MO;
items[1] = MO.weekday;
SU = RRule.SU;
items = [SU.weekday];
MO = RRule.MO;
items[1] = MO.weekday;
TU = RRule.TU;
items[2] = TU.weekday;
WE = RRule.WE;
items[3] = WE.weekday;
TH = RRule.TH;
items[4] = TH.weekday;
FR = RRule.FR;
items[5] = FR.weekday;
SA = RRule.SA;
items[6] = SA.weekday;
const Set = global.Set;
const set = new Set([0, 6]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_scheduled_events/utils/ScheduleUtils.tsx');
exports.MAX_DAYS_AHEAD_AN_EVENT_CAN_START = 365;
exports.MAX_DAYS_AHEAD_AN_EVENT_CAN_END = 366;
exports.MAX_YEARS_AHEAD_RECURRING_EVENT = 4;
exports.getRecurrenceOptions = getRecurrenceOptions;
exports.getInitialEventStartDate = getInitialEventStartDate;
exports.getInitialEventEndDate = getInitialEventEndDate;
exports.getNextBucketedTime = closure;
exports.getEventTimeData = getEventTimeData;
exports.convertJSDayToRRuleDay = closure2;
exports.getBaseScheduleForRecurrence = getBaseScheduleForRecurrence;
exports.getScheduleForRecurrenceWithException = getScheduleForRecurrenceWithException;
exports.getScheduleFromEventData = function(a0) {
return _getSchedule(a0.scheduledStartTime, a0.scheduledEndTime);
};
exports.getScheduleFromEvent = closure3;
exports.hasValidSchedule = function({startDate, endDate}, a1) {
return startDate != null && (!(startDate < importDefault(dependencyMap[5])()) && (!(endDate != null && endDate < startDate) && (a1 !== GuildScheduledEventEntityTypes.EXTERNAL || endDate != null)));
};
exports.areDatesIdentical = closure4;
exports.areSchedulesIdentical = function(a0, a1) {
return a0 == null || a1 == null ? a0 == null && a1 == null : areDatesIdentical(a0.startDate,
a1.startDate) && areDatesIdentical(a0.endDate, a1.endDate);
};
exports.getRRule = closure5;
exports.generateNextRecurrences = generateNextRecurrences;
exports.getNextRecurrenceInEvent = closure6;
exports.getNextRecurrenceIdInEvent = getNextRecurrenceIdInEvent;
exports.isValidRecurrence = isValidRecurrence;
exports.getValidWeekdays = closure7;
exports.getValidWeekends = closure8;
exports.recurrenceOptionToRecurrenceRule = recurrenceOptionToRecurrenceRule;
exports.recurrenceRuleToOption = recurrenceRuleToOption;
exports.hasScheduleChanges = hasScheduleChanges;
exports.getRecurrenceStatus = function(a0, a1, a2) {
var value = null;
return value == a0 ? a1 < a2 ? GuildScheduledEventStatus.COMPLETED : value != a0 ? GuildScheduledEventStatus.SCHEDULED : value : a0.is_canceled ? GuildScheduledEventStatus.CANCELED : a1 < a2 ? GuildScheduledEventStatus.COMPLETED : value != a0 ? GuildScheduledEventStatus.SCHEDULED : value;
};
}
function convertJSDayToRRuleDay(a0) { // fn#70351, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:1413, offset: 0x01cf757b, size: 64 bytes, params: 2, frame: 12
const Weekday = (require(9041) /* metro dependency 9041 */).Weekday;
const property = env0_13[a0];
const value = Object.create(Weekday.prototype, {constructor: {value: Weekday}});
const weekday = new Weekday(property);
return weekday instanceof Object ? weekday : value;
}
function _getSchedule(a0, a1) { // fn#70352, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:1482, offset: 0x01cf75bb, size: 99 bytes, params: 3, frame: 18
var r0;
var object2;
const value = undefined;
if (a0 != null) {
object2 = {};
object2.startDate = (importDefault(3738) /* metro dependency 3738 */)(a0);
object2.endDate = value;
if (a1 == null) {
r0 = object2;
} else {
object2.endDate = (importDefault(3738) /* metro dependency 3738 */)(a1);
r0 = object2;
}
} else {
r0 = value;
}
return r0;
}
function getRRule(a0) { // fn#70355, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:1792, offset: 0x01cf766b, size: 404 bytes, params: 2, frame: 21
var r10;
var r5;
var r7;
var r3;
var object;
var items4;
var items2;
var items3;
let byWeekday = a0.byWeekday;
let value = null;
if (value != byWeekday) {
byWeekday = a0.byWeekday;
object = [];
arraySpread(object, byWeekday, 0, r10);
r5 = object;
} else {
r5 = value;
}
const byNWeekday = a0.byNWeekday;
let r4 = value == byNWeekday ? undefined : byNWeekday.map(_fun70356);
let Date = global.Date;
let date = new Date(a0.start);
date.setMilliseconds(0);
const RRule = require(dependencyMap[3]).RRule;
object = {dtstart: date};
if (value != a0.end) {
Date = global.Date;
date = new Date(a0.end);
r10 = Date;
} else {
r7 = value;
r10 = dependencyMap;
}
object.until = r7;
object.freq = a0.frequency;
object.interval = a0.interval;
r4 = value != r5 ? r5 : r4;
object.byweekday = r4;
let byMonth = a0.byMonth;
if (value != byMonth) {
byMonth = a0.byMonth;
items4 = [];
arraySpread(items4, byMonth, 0, r10);
r4 = items4;
} else {
r4 = value;
}
object.bymonth = r4;
let byMonthDay = a0.byMonthDay;
if (value != byMonthDay) {
byMonthDay = a0.byMonthDay;
items2 = [];
arraySpread(items2, byMonthDay, 0, r10);
r4 = items2;
} else {
r4 = value;
}
object.bymonthday = r4;
let byYearDay = a0.byYearDay;
if (value != byYearDay) {
byYearDay = a0.byYearDay;
items3 = [];
arraySpread(items3, byYearDay, 0, r10);
r3 = items3;
} else {
r3 = value;
}
object.byyearday = r3;
object.count = a0.count;
value = Object.create(RRule.prototype, {constructor: {value: RRule}});
const rRule = new RRule();
return rRule instanceof Object ? rRule : value;
}
function getValidWeekdays(a0) { // fn#70358, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:2382, offset: 0x01cf7879, size: 122 bytes, params: 2, frame: 14
const convertJSDayToRRuleDayBinding = convertJSDayToRRuleDay;
const value4 = convertJSDayToRRuleDayBinding(a0.toDate().getDay());
const value5 = a0.toDate();
const getUTCDay = value5.getUTCDay;
const value6 = convertJSDayToRRuleDayBinding(Reflect.apply(getUTCDay, value5, []));
return value6.weekday - value4.weekday > 0 ? env0_9 : value6.weekday - value4.weekday < 0 ? env0_8 : env0_7;
}
function getValidWeekends(a0) { // fn#70359, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:2567, offset: 0x01cf78f3, size: 122 bytes, params: 2, frame: 14
const convertJSDayToRRuleDayBinding = convertJSDayToRRuleDay;
const value4 = convertJSDayToRRuleDayBinding(a0.toDate().getDay());
const value5 = a0.toDate();
const getUTCDay = value5.getUTCDay;
const value6 = convertJSDayToRRuleDayBinding(Reflect.apply(getUTCDay, value5, []));
return value6.weekday - value4.weekday > 0 ? env0_12 : value6.weekday - value4.weekday < 0 ? env0_11 : env0_10;
}
function formatDatePreferShorter(a0, a1) { // fn#70360, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:1087, offset: 0x01cf796d, size: 85 bytes, params: 3, frame: 16
const value = require(3826) /* metro dependency 3826: DateUtils */;
return value.dateFormat(a0, a0.get('years') !== a1.get('years') ? 'ddd MMM Do, YYYY · LT' : 'ddd MMM Do · LT');
}
function formatDatePrefersRelativeTime(a0, a1) { // fn#70361, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:1222, offset: 0x01cf79c2, size: 157 bytes, params: 3, frame: 20
var r0;
var dateFormat;
var value4;
var calendar;
var value;
const dateUtilsModule = require(3826) /* metro dependency 3826: DateUtils */;
const value3 = dateUtilsModule.differenceInCalendarDays(a0.toDate(), a1.toDate());
if (value3 > 1) {
r0 = formatDatePreferShorter(a0, a1);
} else if (value3 < 0) {
r0 = formatDatePreferShorter(a0, a1);
} else {
value = dateUtilsModule;
dateFormat = value.dateFormat;
value4 = a0.localeData();
calendar = value4.calendar;
r0 = value3 < 1 ? 'sameDay' : 'nextDay';
value = Reflect.apply(dateFormat, value, [a0, Reflect.apply(calendar, value4, [r0, a0, a1])]);
r0 = value;
}
return r0;
}
function getRecurrenceOptions(a0) { // fn#70362, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:2978, offset: 0x01cf7a5f, size: 803 bytes, params: 2, frame: 25
var r1;
var push;
var value6;
let value = a0.toDate();
const Math = global.Math;
const value3 = Math.ceil(value.getDate() / 7);
const value4 = a0.format('dddd');
let object2 = {id: 'none'};
const NONE = RecurrenceOptions.NONE;
object2.value = NONE;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
object2.label = Reflect.apply(string, intl, [t['0bK0B1']]);
const items2 = [object2];
const WEEKLY = RecurrenceOptions.WEEKLY;
let formatToPlainString = intl.formatToPlainString;
let property = t['B8/yfp'];
items2[1] = {id: 'weekly', value: WEEKLY, label: Reflect.apply(formatToPlainString, intl, [property,
{weekday: value4}])};
const BIWEEKLY = RecurrenceOptions.BIWEEKLY;
items2[2] = {id: 'biweekly', value: BIWEEKLY, label: intl.formatToPlainString(t['z+aIuX'], {weekday: value4})};
const MONTHLY = RecurrenceOptions.MONTHLY;
items2[3] = {id: 'monthly', value: MONTHLY, label: intl.formatToPlainString(t.mjOEBk, {nth: value3,
weekday: value4})};
object2 = {id: 'yearly'};
const YEARLY = RecurrenceOptions.YEARLY;
object2.value = YEARLY;
formatToPlainString = intl.formatToPlainString;
property = t['5DFcVl'];
const object3 = {};
object3.date = value.toLocaleString((require(1244) /* metro dependency 1244: indexNative */).intl.currentLocale,
{'month': 'short', 'day': '2-digit'});
object2.label = Reflect.apply(formatToPlainString, intl, [property, object3]);
items2[4] = object2;
const binding = env0_14;
const has = binding.has;
const getDay = value.getDay;
if (Reflect.apply(has, binding, [Reflect.apply(getDay, value, [])])) {
value = UserStore.getCurrentUser();
value6 = value != null;
if (value6) {
value = value.isStaff();
r1 = value;
} else {
r1 = value6;
}
if (r1) {
items2.push({id: 'weekendOnly', value: RecurrenceOptions.WEEKEND_ONLY, label: intl.string(t.hRpynV)});
}
} else {
push = items2.push;
object2 = {id: 'weekdayOnly'};
object2.value = RecurrenceOptions.WEEKDAY_ONLY;
object2.label = intl.string(t['jYR/MY']);
Reflect.apply(push, items2, [object2]);
}
return items2;
}
function getInitialEventStartDate() { // fn#70363, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:3920, offset: 0x01cf7d82, size: 118 bytes, params: 1, frame: 15
let value = (importDefault(3738) /* metro dependency 3738 */)();
value = value.add(1, 'hour');
const value2 = value.hour();
value = value.hour(value.minutes() >= 30 ? value2 + 1 : value2);
value = value.minutes(0);
return value.seconds(0);
}
function getInitialEventEndDate(a0) { // fn#70364, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:4056, offset: 0x01cf7df8, size: 102 bytes, params: 2, frame: 15
return getNextBucketedTime((a0 != null ? (importDefault(3738) /* metro dependency 3738 */)(a0) : (importDefault(3738) /* metro dependency 3738 */)()).add(1,
'hour'), 60);
}
function getEventTimeData(a0, a1, a2) { // fn#70365, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:4231, offset: 0x01cf7e5e, size: 321 bytes, params: 4, frame: 20
var r5;
const r4 = a2 ?? (importDefault(3738) /* metro dependency 3738 */)();
const value2 = undefined;
const value3 = (importDefault(3738) /* metro dependency 3738 */)(a0);
const r10 = a1 != null ? a1 === '' ? value2 : (importDefault(3738) /* metro dependency 3738 */)(a1) : value2;
let r7 = a1 != null && value3.isSame(r10, 'day');
const object2 = {};
object2.startDateTimeString = formatDatePrefersRelativeTime(value3, r4);
if (r10 != null) {
r7 = r7 ? r10.format('LT') : formatDatePreferShorter(r10, r4);
r5 = r7;
} else {
r5 = value2;
}
object2.endDateTimeString = r5;
object2.currentOrPastEvent = value3 <= r4;
value = (importDefault(3738) /* metro dependency 3738 */)();
object2.upcomingEvent = value3 <= value.add(1, 'hour');
value = (importDefault(3738) /* metro dependency 3738 */)();
object2.withinStartWindow = value3 <= value.add(15, 'minute');
object2.diffMinutes = value3.diff(r4, 'minutes');
return object2;
}
function getBaseScheduleForRecurrence(a0, a1) { // fn#70366, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:4741, offset: 0x01cf7f9f, size: 151 bytes, params: 3, frame: 15
var r1;
var value4;
var add;
const getScheduleFromEventBinding = getScheduleFromEvent;
const value2 = undefined;
const scheduleFromEventBinding = getScheduleFromEventBinding(a1);
let value = importDefault(3738) /* metro dependency 3738 */;
const defaultImport = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value(defaultImport.extractTimestamp(a0));
let endDate = scheduleFromEventBinding == null ? value2 : scheduleFromEventBinding.endDate;
if (endDate != null) {
value4 = value.clone();
add = value4.add;
endDate = scheduleFromEventBinding.endDate;
r1 = Reflect.apply(add, value4, [endDate.diff(scheduleFromEventBinding.startDate)]);
} else {
r1 = value2;
}
return {startDate: value, endDate: r1};
}
function getScheduleForRecurrenceWithException(a0, a1) { // fn#70367, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:5011, offset: 0x01cf8036, size: 140 bytes, params: 3, frame: 17
var r3;
var value;
if (a1 == null) {
return a0;
}
const r5 = a1.scheduled_end_time ?? a0.endDate;
const object2 = {};
if (a1.scheduled_start_time != null) {
value = importDefault(3738) /* metro dependency 3738 */;
value = value(a1.scheduled_start_time);
r3 = value;
} else {
r3 = a0.startDate;
}
object2.startDate = r3;
object2.endDate = r5 != null ? (importDefault(3738) /* metro dependency 3738 */)(r5) : undefined;
return object2;
}
function generateNextRecurrences(a0, a1, a2) { // fn#70371, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:5866, offset: 0x01cf81ab, size: 241 bytes, params: 4, frame: 21
var r7;
var property;
let value = a2;
const value2 = a3;
const env0_0 = a0;
let r0 = value2 !== undefined ? value2 : false;
let Date = global.Date;
const value4 = Object.create(Date.prototype, {constructor: {value: Date}});
let date = new Date();
if (value > (date instanceof Object ? date : value4)) {
r7 = value;
} else {
date = new global.Date();
}
Date = global.Date;
date = new Date();
date.setFullYear(date.getFullYear() + 4);
const value11 = a1.between(r7, date, true, _fun70372);
if (r0) {
if (value11.length > 0) {
value = value.getTime();
property = value11[0];
r0 = value === property.getTime() ? value11.slice(1) : value11.slice(0, a0);
} else {
r0 = value11.slice(0, a0);
}
} else {
r0 = value11.slice(0, a0);
}
return r0;
}
function getNextRecurrenceIdInEvent(a0) { // fn#70373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:6179, offset: 0x01cf82b3, size: 152 bytes, params: 2, frame: 20
var r1;
var fromTimestamp;
var Math;
var floor;
var time;
var Millis;
var SECOND;
var value5;
let value = null;
if (value == a0) {
return value;
}
const nextRecurrenceInEvent = getNextRecurrenceInEvent(a0);
if (value != nextRecurrenceInEvent) {
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
fromTimestamp = value.fromTimestamp;
Math = global.Math;
floor = Math.floor;
time = nextRecurrenceInEvent.getTime();
Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
SECOND = Millis.SECOND;
value5 = Reflect.apply(floor, Math, [time / SECOND]);
Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
SECOND = Millis.SECOND;
value = Reflect.apply(fromTimestamp, value, [value5 * SECOND]);
r1 = value;
} else {
r1 = value;
}
return r1;
}
function isValidRecurrence(a0, a1) { // fn#70374, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:6410, offset: 0x01cf834b, size: 337 bytes, params: 3, frame: 16
if (a1 == null) {
return false;
}
if (a0 == null) {
return false;
}
let Date = global.Date;
let date = new Date(a0.start);
const value3 = (importDefault(21) /* metro dependency 21: SnowflakeUtils */).extractTimestamp(a1);
Date = global.Date;
date = new Date(value3);
let getUTCHours = date.getUTCHours;
const value6 = Reflect.apply(getUTCHours, date, []);
getUTCHours = date.getUTCHours;
if (value6 !== Reflect.apply(getUTCHours, date, [])) {
return false;
}
let getUTCMinutes = date.getUTCMinutes;
const value7 = Reflect.apply(getUTCMinutes, date, []);
getUTCMinutes = date.getUTCMinutes;
if (value7 !== Reflect.apply(getUTCMinutes, date, [])) {
return false;
}
let getUTCSeconds = date.getUTCSeconds;
const value8 = Reflect.apply(getUTCSeconds, date, []);
getUTCSeconds = date.getUTCSeconds;
if (value8 !== Reflect.apply(getUTCSeconds, date, [])) {
return false;
}
const frequency = a0.frequency;
const RRule = (require(9041) /* metro dependency 9041 */).RRule;
const WEEKLY = RRule.WEEKLY;
if (WEEKLY === frequency) {
date = date.getUTCDay();
return date === date.getUTCDay();
}
const YEARLY = RRule.YEARLY;
if (YEARLY === frequency) {
date = date.getUTCDate();
return date === date.getUTCDate();
}
return true;
}
function recurrenceOptionToRecurrenceRule(a0, a1) { // fn#70375, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:6938, offset: 0x01cf849c, size: 986 bytes, params: 3, frame: 23
var r1;
const RRule = (require(9041) /* metro dependency 9041 */).RRule;
var object2;
const getValidWeekdaysBinding = getValidWeekdays;
const value2 = undefined;
const validWeekdaysBinding = getValidWeekdaysBinding(a1);
const validWeekends = getValidWeekends(a1);
const convertJSDayToRRuleDayBinding = convertJSDayToRRuleDay;
const value5 = a1.toDate();
const getUTCDay = value5.getUTCDay;
const value6 = convertJSDayToRRuleDayBinding(Reflect.apply(getUTCDay, value5, []));
const Math = global.Math;
const value9 = Math.ceil(a1.toDate().getUTCDate() / 7);
const value10 = a1.toDate();
value10.setMilliseconds(0);
const NONE = RecurrenceOptions.NONE;
const value11 = null;
if (NONE === a0) {
r1 = value11;
} else if (RecurrenceOptions.WEEKLY === a0) {
({dtstart: value10}).freq = (require(9041) /* metro dependency 9041 */).RRule.WEEKLY;
r1 = new RRule();
} else if (RecurrenceOptions.BIWEEKLY === a0) {
object2 = {dtstart: value10};
object2.freq = (require(9041) /* metro dependency 9041 */).RRule.WEEKLY;
object2.interval = 2;
r1 = new RRule();
} else if (RecurrenceOptions.MONTHLY === a0) {
object2 = {dtstart: value10};
object2.freq = (require(9041) /* metro dependency 9041 */).RRule.MONTHLY;
object2.byweekday = [value6.nth(value9)];
r1 = new RRule();
} else if (RecurrenceOptions.YEARLY === a0) {
({dtstart: value10}).freq = (require(9041) /* metro dependency 9041 */).RRule.YEARLY;
r1 = new RRule();
} else if (RecurrenceOptions.WEEKDAY_ONLY === a0) {
object2 = {dtstart: value10};
object2.freq = (require(9041) /* metro dependency 9041 */).RRule.DAILY;
object2.byweekday = validWeekdaysBinding;
r1 = new RRule();
} else if (RecurrenceOptions.WEEKEND_ONLY !== a0) {
r1 = value2;
} else {
object2 = {dtstart: value10};
object2.freq = (require(9041) /* metro dependency 9041 */).RRule.DAILY;
object2.byweekday = validWeekends;
r1 = new RRule();
}
if (value11 == r1) {
return value11;
}
const {dtstart, until, freq, interval, byweekday, bynweekday, bymonth, bymonthday, byyearday, count} = r1.options;
const r6 = value11 == bynweekday ? value2 : bynweekday.map(function(a0) {
return {n: a0[1], day: a0[0]};
});
object2 = {start: dtstart.toISOString()};
object2.end = value11 == until ? value2 : until.toISOString();
object2.frequency = freq;
object2.interval = interval;
object2.byWeekday = byweekday;
object2.byNWeekday = r6;
object2.byMonth = bymonth;
object2.byMonthDay = bymonthday;
object2.byYearDay = byyearday;
object2.count = count;
return object2;
}
function recurrenceRuleToOption(a0, a1) { // fn#70377, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:8178, offset: 0x01cf8894, size: 461 bytes, params: 3, frame: 18
var r2;
var moduleValue;
var moduleValue2;
if (a1 != null) {
var rRule = getRRule(a1);
var freq = rRule.options.freq;
var RRule = (require(9041) /* metro dependency 9041 */).RRule;
var WEEKLY = RRule.WEEKLY;
if (WEEKLY === freq) {
return rRule.options.interval < 1 || rRule.options.interval > 2 ? RecurrenceOptions.NONE : rRule.options.interval === 1 ? RecurrenceOptions.WEEKLY : RecurrenceOptions.BIWEEKLY;
}
var YEARLY = RRule.YEARLY;
if (YEARLY === freq) {
return RecurrenceOptions.YEARLY;
}
var MONTHLY = RRule.MONTHLY;
if (MONTHLY === freq) {
return RecurrenceOptions.MONTHLY;
}
var DAILY = RRule.DAILY;
if (DAILY === freq) {
moduleValue = require(22) /* metro dependency 22 */;
if (moduleValue.isEqual(rRule.options.byweekday, getValidWeekdays(a0))) {
r2 = RecurrenceOptions.WEEKDAY_ONLY;
} else {
moduleValue2 = require(22) /* metro dependency 22 */;
r2 = moduleValue2.isEqual(rRule.options.byweekday,
getValidWeekends(a0)) ? RecurrenceOptions.WEEKEND_ONLY : RecurrenceOptions.NONE;
}
return r2;
}
}
return RecurrenceOptions.NONE;
}
function hasScheduleChanges(a0, a1) { // fn#70378, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:8721, offset: 0x01cf8a61, size: 109 bytes, params: 3, frame: 16
let value = undefined;
let r0 = (a0 == null ? value : a0.scheduled_start_time) !== a1.scheduledStartTime || a0.scheduled_end_time !== a1.scheduledEndTime;
if (!r0) {
value = require(22) /* metro dependency 22 */;
value = !value.isEqual(a0.recurrence_rule, a1.recurrenceRule);
r0 = value;
}
return r0;
}
function _fun70356({day, n}) { // fn#70356, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:1900, offset: 0x01cf77ff, size: 68 bytes, params: 2, frame: 13
let value = environment.__proto__;
const Weekday = (require(9041) /* metro dependency 9041 */).Weekday;
value = Object.create(Weekday.prototype, {constructor: {value: Weekday}});
const weekday = new Weekday(day, n);
return weekday instanceof Object ? weekday : value;
}
function _fun70372(a0, a1) { // fn#70372, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9224:6007, offset: 0x01cf829c, size: 23 bytes, params: 3, frame: 2
return a1 < env0_0 + 1;
}
@@ -0,0 +1,13 @@
/* Metro module 9051; source: modules/guild_scheduled_events/utils/ShareEventUtils.tsx; dependencies: [2] */
function _fun70749(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#70749, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9236:6, offset: 0x01d06730, size: 102 bytes, params: 8, frame: 16
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_scheduled_events/utils/ShareEventUtils.tsx');
exports.SHARE_EVENT_DETAILS_LINK = function({guildId, guildEventId}) {
return 'https://discord.com/events/' + guildId + '/' + guildEventId;
};
exports.canUseInviteModal = function(a0, a1, a2) {
return a0 && a1 && a2 != null;
};
}
@@ -0,0 +1,32 @@
/* Metro module 9215; source: modules/guild_scheduled_events/utils/getGuildEventImage.tsx; dependencies: [661, 1457, 2] */
function _fun72080(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#72080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9400:6, offset: 0x01d39258, size: 117 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(661) /* metro dependency 661: Constants */).Endpoints;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_scheduled_events/utils/getGuildEventImage.tsx');
exports.default = getGuildEventImageURL;
}
function getGuildEventImageURL(a0, a1) { // fn#72081, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9400:219, offset: 0x01d392cd, size: 298 bytes, params: 3, frame: 27
var r5;
var width;
let value = a1;
if (a0.image == null) {
return null;
}
if (value != null) {
r5 = value;
} else {
width = global.window.screen.width;
value = require(1457) /* metro dependency 1457: ImageLoaderUtils */;
value = width * value.getDevicePixelRatio();
r5 = value;
}
const bestMediaProxySize = (require(1457) /* metro dependency 1457: ImageLoaderUtils */).getBestMediaProxySize(r5);
const GLOBAL_ENV = global.window.GLOBAL_ENV;
const CDN_HOST = GLOBAL_ENV.CDN_HOST;
return (CDN_HOST != null ? '' + 'https:' + '//' + CDN_HOST + '/guild-events/' + a0.id + '/' + a0.image : global.location.protocol + global.window.GLOBAL_ENV.API_ENDPOINT + Endpoints.GUILD_EVENT_IMAGE(a0.id,
a0.image, 'png')) + ('?size=' + bestMediaProxySize);
}