2026-07-24 07:16:23 +00:00
// Module ID: 8363
// Function ID: 66074
2026-07-20 16:05:17 +00:00
// Name: _isNativeReflectConstruct
2026-07-24 07:16:23 +00:00
// Dependencies: [6, 7, 15, 17, 18, 664, 7086, 8364, 566, 686, 2]
2026-07-20 16:05:17 +00:00
2026-07-24 07:16:23 +00:00
// Module 8363 (_isNativeReflectConstruct)
2026-07-23 10:11:24 +00:00
import MessageEmbedTypes from "MessageEmbedTypes" ;
import generateHydrationId from "generateHydrationId" ;
import _possibleConstructorReturn from "_possibleConstructorReturn" ;
import _getPrototypeOf from "_getPrototypeOf" ;
import _inherits from "_inherits" ;
const require = arg1 ;
2026-07-20 16:05:17 +00:00
function _isNativeReflectConstruct() {
let closure_0 = ! valueOf . call ( Reflect . construct ( Boolean , [ ] , ( ) = > {
} ) ) ;
function _isNativeReflectConstruct() {
return closure_0 ;
}
const result = _isNativeReflectConstruct ( ) ;
}
2026-07-23 10:11:24 +00:00
function _createForOfIteratorHelperLoose ( iterable ) {
let closure_0 = iterable ;
iterable = "undefined" !== typeof Symbol ;
if ( iterable ) {
2026-07-20 16:05:17 +00:00
const _Symbol = Symbol ;
2026-07-23 10:11:24 +00:00
iterable = iterable [ Symbol . iterator ] ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( ! iterable ) {
iterable = iterable [ Symbol . iterator ] ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( iterable ) {
const iter = iterable . call ( iterable ) ;
2026-07-20 16:05:17 +00:00
const next = iter . next ;
return next . bind ( iter ) ;
} else {
const _Array = Array ;
2026-07-23 10:11:24 +00:00
let tmp = iterable ;
if ( ! Array . isArray ( iterable ) ) {
2026-07-20 16:05:17 +00:00
let tmp2 ;
2026-07-23 10:11:24 +00:00
if ( iterable ) {
if ( "string" === typeof iterable ) {
tmp2 = _arrayLikeToArray ( iterable , undefined ) ;
2026-07-20 16:05:17 +00:00
} else {
const toString = { } . toString ;
2026-07-23 10:11:24 +00:00
const substr = toString . call ( iterable ) . slice ( 8 , - 1 ) ;
2026-07-20 16:05:17 +00:00
let name = substr ;
if ( tmp3 ) {
2026-07-23 10:11:24 +00:00
name = iterable . constructor . name ;
2026-07-20 16:05:17 +00:00
}
if ( "Map" !== name ) {
if ( "Set" !== name ) {
if ( "Arguments" === name ) {
2026-07-23 10:11:24 +00:00
let arr = _arrayLikeToArray ( iterable , undefined ) ;
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
let obj = /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/ ;
2026-07-20 16:05:17 +00:00
}
}
tmp2 = arr ;
}
const _Array2 = Array ;
2026-07-23 10:11:24 +00:00
arr = Array . from ( iterable ) ;
const callResult = toString . call ( iterable ) ;
tmp3 = "Object" === substr && iterable . constructor ;
2026-07-20 16:05:17 +00:00
}
}
tmp = tmp2 ;
if ( ! tmp2 ) {
const _TypeError = TypeError ;
const typeError = new TypeError ( "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method." ) ;
throw typeError ;
}
}
if ( tmp ) {
2026-07-23 10:11:24 +00:00
closure_0 = tmp ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let c1 = 0 ;
2026-07-20 16:05:17 +00:00
return ( ) = > {
2026-07-23 10:11:24 +00:00
if ( closure_1 >= length . length ) {
2026-07-20 16:05:17 +00:00
let obj = { done : true } ;
} else {
obj = { done : false } ;
closure_1 = tmp3 + 1 ;
2026-07-23 10:11:24 +00:00
obj . value = length [ + closure_1 ] ;
2026-07-20 16:05:17 +00:00
}
return obj ;
} ;
}
}
function _arrayLikeToArray ( arg0 , arg1 ) {
let length ;
if ( tmp ) {
length = arg0 . length ;
}
const ArrayResult = Array ( length ) ;
for ( let num = 0 ; num < length ; num = num + 1 ) {
ArrayResult [ num ] = arg0 [ num ] ;
}
return ArrayResult ;
}
2026-07-23 10:11:24 +00:00
let closure_7 = 7 * require ( "set" ) . Millis . DAY ;
2026-07-20 16:05:17 +00:00
let closure_8 = { readIdToTimestampMap : { } } ;
2026-07-23 10:11:24 +00:00
let tmp2 = ( ( DeviceSettingsStore ) = > {
2026-07-20 16:05:17 +00:00
class ICYMIUnreadStateStore {
constructor ( ) {
self = this ;
2026-07-23 10:11:24 +00:00
tmp = outer1_2 ( this , ICYMIUnreadStateStore ) ;
obj = outer1_5 ( ICYMIUnreadStateStore ) ;
tmp2 = outer1_4 ;
if ( outer1_9 ( ) ) {
2026-07-20 16:05:17 +00:00
tmp6 = globalThis ;
_Reflect = Reflect ;
2026-07-23 10:11:24 +00:00
tmp7 = outer1_5 ;
2026-07-20 16:05:17 +00:00
tmp8 = arguments ;
2026-07-23 10:11:24 +00:00
constructResult = Reflect . construct ( obj , arguments , outer1_5 ( self ) . constructor ) ;
2026-07-20 16:05:17 +00:00
} else {
tmp3 = arguments ;
tmp4 = arguments ;
constructResult = obj ( . . . arguments ) ;
}
return tmp2 ( self , constructResult ) ;
}
}
callback2 ( ICYMIUnreadStateStore , DeviceSettingsStore ) ;
let obj = {
key : "initialize" ,
value ( readIdToTimestampMap ) {
let done ;
if ( null != readIdToTimestampMap ) {
if ( null != readIdToTimestampMap . readIdToTimestampMap ) {
const obj = { readIdToTimestampMap : readIdToTimestampMap.readIdToTimestampMap } ;
}
2026-07-23 10:11:24 +00:00
const outer1_8 = { readIdToTimestampMap : { } } ;
2026-07-20 16:05:17 +00:00
const _Date = Date ;
2026-07-23 10:11:24 +00:00
let closure_0 = Date . now ( ) - outer1_7 ;
2026-07-20 16:05:17 +00:00
const _Object = Object ;
2026-07-23 10:11:24 +00:00
const keys = Object . keys ( outer1_8 . readIdToTimestampMap ) ;
const tmp8 = outer1_10 ( keys . filter ( ( arg0 ) = > outer2_8 . readIdToTimestampMap [ arg0 ] < closure_0 ) ) ;
let iter = tmp8 ( ) ;
2026-07-20 16:05:17 +00:00
if ( ! iter . done ) {
do {
let value = iter . value ;
2026-07-23 10:11:24 +00:00
let tmp9 = outer1_8 ;
readIdToTimestampMap = outer1_8 . readIdToTimestampMap ;
delete tmp [ tmp2 ] ;
let iter2 = tmp8 ( ) ;
2026-07-20 16:05:17 +00:00
iter = iter2 ;
done = iter2 . done ;
} while ( ! done ) ;
}
}
}
} ;
const items = [ obj , , , ] ;
obj = {
key : "getReadTimestamp" ,
value ( arg0 ) {
2026-07-23 10:11:24 +00:00
return outer1_8 . readIdToTimestampMap [ arg0 ] ;
2026-07-20 16:05:17 +00:00
}
} ;
items [ 1 ] = obj ;
obj = {
key : "getState" ,
value() {
2026-07-23 10:11:24 +00:00
return outer1_8 ;
2026-07-20 16:05:17 +00:00
}
} ;
items [ 2 ] = obj ;
items [ 3 ] = {
key : "getUserAgnosticState" ,
value() {
2026-07-23 10:11:24 +00:00
return outer1_8 ;
2026-07-20 16:05:17 +00:00
}
} ;
return callback ( ICYMIUnreadStateStore , items ) ;
2026-07-23 10:11:24 +00:00
} ) ( require ( "initialize" ) . DeviceSettingsStore ) ;
2026-07-20 16:05:17 +00:00
tmp2 . displayName = "ICYMIUnreadStateStore" ;
tmp2 . persistKey = "ICYMIUnreadStateStore" ;
2026-07-23 10:11:24 +00:00
tmp2 = new tmp2 ( require ( "dispatcher" ) , {
2026-07-20 16:05:17 +00:00
ICYMI_ACK_ITEMS : function handleTabAck ( arg0 ) {
let items ;
2026-07-23 10:11:24 +00:00
let require ;
( { items , override : require } = arg0 ) ;
2026-07-20 16:05:17 +00:00
const item = items . forEach ( ( id ) = > {
let tmp = null != id ;
if ( tmp ) {
2026-07-23 10:11:24 +00:00
tmp = null == outer1_8 . readIdToTimestampMap [ id . id ] || closure_0 ;
const tmp3 = null == outer1_8 . readIdToTimestampMap [ id . id ] || closure_0 ;
2026-07-20 16:05:17 +00:00
}
if ( tmp ) {
2026-07-23 10:11:24 +00:00
outer1_8 . readIdToTimestampMap [ id . id ] = id . timestamp ;
2026-07-20 16:05:17 +00:00
}
} ) ;
} ,
LOAD_ICYMI_DEHYDRATED : function handleLoadDehydrated ( items ) {
let iter3 ;
const tmp = _createForOfIteratorHelperLoose ( items . items ) ;
const iter = tmp ( ) ;
let iter2 = iter ;
if ( ! iter . done ) {
do {
let value = iter2 . value ;
2026-07-23 10:11:24 +00:00
let tmp3 = require ;
let tmp4 = dependencyMap ;
2026-07-20 16:05:17 +00:00
let tmp5 = tmp2 ;
2026-07-24 07:16:23 +00:00
if ( value . type === require ( 7086 ) /* MessageEmbedTypes */ . ICYMIItemTypes . MESSAGE ) {
2026-07-20 16:05:17 +00:00
let tmp11 = closure_8 ;
let result = null != closure_8 . readIdToTimestampMap [ value . id ] ;
if ( ! result ) {
let message_context = value . data . message_context ;
let prop ;
if ( null != message_context ) {
prop = message_context . external_content_application_id ;
}
result = null != prop ;
2026-07-23 10:11:24 +00:00
tmp2 = message_context ;
2026-07-20 16:05:17 +00:00
}
if ( ! result ) {
2026-07-23 10:11:24 +00:00
let tmp8 = require ;
let tmp9 = dependencyMap ;
2026-07-24 07:16:23 +00:00
let obj = require ( 8364 ) /* generateHydrationId */ ;
2026-07-20 16:05:17 +00:00
result = obj . isItemUnreadInChannel ( value . data . channel_id , value . data . message_id ) ;
}
tmp5 = tmp2 ;
if ( ! result ) {
let tmp10 = closure_8 ;
closure_8 . readIdToTimestampMap [ value . id ] = 0 ;
tmp5 = tmp2 ;
}
}
iter3 = tmp ( ) ;
tmp2 = tmp5 ;
iter2 = iter3 ;
} while ( ! iter3 . done ) ;
}
} ,
CLEAR_ICYMI_READ_STATES : function handleClearReadStates() {
closure_8 . readIdToTimestampMap = { } ;
}
} ) ;
2026-07-23 10:11:24 +00:00
let result = require ( "_possibleConstructorReturn" ) . fileFinishedImporting ( "modules/icymi/ICYMIUnreadStateStore.tsx" ) ;
2026-07-20 16:05:17 +00:00
export default tmp2 ;