2026-07-25 08:10:48 +00:00
// Module ID: 7619
// Function ID: 60866
2026-07-20 16:05:17 +00:00
// Name: _isNativeReflectConstruct
2026-07-25 08:10:48 +00:00
// Dependencies: [29, 15, 17, 18, 57, 6, 7, 31, 27, 33, 22, 620, 5515, 4127, 477, 3992, 7620, 7621, 5189, 7622, 5217, 3995, 2]
2026-07-20 16:05:17 +00:00
// Exports: getItemSizeOverrideKey
2026-07-25 08:10:48 +00:00
// Module 7619 (_isNativeReflectConstruct)
2026-07-23 10:11:24 +00:00
import _objectWithoutProperties from "_objectWithoutProperties" ;
2026-07-25 08:10:48 +00:00
import module_3992 from "module_3992" ;
2026-07-23 10:11:24 +00:00
import createFakeSharedValue from "createFakeSharedValue" ;
import BottomSheetModal from "BottomSheetModal" ;
import _slicedToArray from "_slicedToArray" ;
import _defineProperties from "_defineProperties" ;
import result from "result" ;
import importAllResult from "result" ;
import get_ActivityIndicator from "get ActivityIndicator" ;
import jsxProd from "jsxProd" ;
2026-07-25 08:10:48 +00:00
import importDefaultResult from "module_3992" ;
2026-07-23 10:11:24 +00:00
2026-07-20 16:05:17 +00:00
let StyleSheet ;
2026-07-23 10:11:24 +00:00
let closure_12 ;
let closure_13 ;
let closure_14 ;
let closure_15 ;
let closure_16 ;
let closure_17 ;
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 ;
}
function renderDefaultEmpty() {
return null ;
}
function defaultRecyclerKey() {
}
function getBatchSize ( rounded ) {
return Math . ceil ( rounded / 4 ) ;
}
function computeBlock ( endImportTime ) {
if ( 0 === endImportTime ) {
2026-07-23 10:11:24 +00:00
return { batchSize : 0 , blockStart : 0 , blockEnd : 0 } ;
2026-07-20 16:05:17 +00:00
} else {
const _Math = Math ;
const rounded = Math . ceil ( endImportTime ) ;
const _Math2 = Math ;
const rounded1 = Math . floor ( arg1 ) ;
const tmp6 = getBatchSize ( rounded ) ;
const _Math3 = Math ;
const _Math4 = Math ;
const result = Math . max ( 0 , Math . round ( ( rounded1 + rounded / 2 ) / tmp6 ) - arg2 / 2 ) * tmp6 ;
const obj = { batchSize : tmp6 , blockStart : result , blockEnd : result + tmp6 * arg2 } ;
return obj ;
}
}
2026-07-23 10:11:24 +00:00
class FastListIosFabricGestureWorkaround {
constructor ( arg0 ) {
children = global . children ;
2026-07-20 16:05:17 +00:00
tmp2 = children ;
2026-07-23 10:11:24 +00:00
if ( true !== global . inActionSheet ) {
tmp3 = closure_0 ;
tmp4 = closure_2 ;
num = 21 ;
obj = require ( "isFabric" ) ;
tmp2 = children ;
if ( obj . isIosFabric ( ) ) {
tmp5 = jsx ;
tmp6 = closure_0 ;
tmp7 = closure_2 ;
num2 = 20 ;
obj = { } ;
obj . gesture = tmp ;
obj . children = children ;
tmp2 = jsx ( require ( "Directions" ) . GestureDetector , obj ) ;
}
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
return tmp2 ;
2026-07-20 16:05:17 +00:00
}
}
2026-07-23 10:11:24 +00:00
let closure_3 = [ "manualRef" , "onScroll" , "onScrollWorklet" , "onScrollEnd" , "onLayout" , "renderHeader" , "renderFooter" , "renderSection" , "renderItem" , "renderSectionFooter" , "getRecyclerKey" , "onEndReached" , "endReachedThreshold" , "headerSize" , "footerSize" , "sectionSize" , "sectionFooterSize" , "itemSize" , "sections" , "scrollPosValue" , "batchesToRender" , "optimizeListItemRender" , "initialScrollSection" , "initialScrollItem" , "initialScrollOrientation" , "initialScrollStart" , "getAnchorIdFromIndex" , "getAnchorIndexFromId" , "EXPERIMENTAL_enableAnchorWhileScrolling" , "chunkBase" , "disableContentWrappers" , "childrenWrapper" , "stickyHeaderFooter" , "stickySectionsVariant" , "persistantKeys" , "disableRecyclingOnFullCompute" , "disableLegacyGestureHandling" , "viewabilityConfig" , "onViewableItemsChanged" , "debugLayout" , "renderAccessory" , "removeClippedSubviews" , "inActionSheet" ] ;
( { PixelRatio : closure_12 , ScrollView : closure_13 , StyleSheet , findNodeHandle : closure_14 } = get_ActivityIndicator ) ;
( { jsxs : closure_15 , jsx : closure_16 , Fragment : closure_17 } = jsxProd ) ;
let map = new Map ( ) ;
let obj = { SPACER : "SPACER" , HEADER : "HEADER" , FOOTER : "FOOTER" , SECTION : "SECTION" , ITEM : "ITEM" , SECTION_FOOTER : "SECTION_FOOTER" } ;
let tmp5 = ( ( ) = > {
2026-07-20 16:05:17 +00:00
class FastListItemRecycler {
constructor ( arg0 ) {
2026-07-23 10:11:24 +00:00
self = this ;
tmp = outer1_9 ( this , self ) ;
2026-07-20 16:05:17 +00:00
this . _items = { } ;
this . _pendingItems = { } ;
item = arg0 . forEach ( ( recyclerKey ) = > {
2026-07-23 10:11:24 +00:00
outer2_8 ( self . _itemsForType ( recyclerKey . type ) , 1 ) [ 0 ] [ recyclerKey . recyclerKey ] = recyclerKey ;
2026-07-20 16:05:17 +00:00
} ) ;
return ;
}
}
let obj = {
key : "_itemsForType" ,
value ( arg0 ) {
const self = this ;
let tmp = this . _items [ arg0 ] ;
if ( null == tmp ) {
const obj = { } ;
self . _items [ arg0 ] = obj ;
tmp = obj ;
}
const items = [ tmp , ] ;
let tmp2 = self . _pendingItems [ arg0 ] ;
if ( null == tmp2 ) {
const items1 = [ ] ;
self . _pendingItems [ arg0 ] = items1 ;
tmp2 = items1 ;
}
items [ 1 ] = tmp2 ;
return items ;
}
} ;
2026-07-23 10:11:24 +00:00
let items = [ obj , , , , ] ;
2026-07-20 16:05:17 +00:00
obj = {
key : "get" ,
value ( type , layoutStart , layoutSize , customKey ) {
let num = arg4 ;
let num2 = arg5 ;
const self = this ;
if ( arg4 === undefined ) {
num = 0 ;
}
if ( num2 === undefined ) {
num2 = - 1 ;
}
const obj = { type , layoutStart , layoutSize , customKey , section : num , item : num2 } ;
2026-07-23 10:11:24 +00:00
[ obj . items , obj . pendingItems ] = outer1_8 ( self . _itemsForType ( type ) , 2 ) ;
2026-07-20 16:05:17 +00:00
return self . _get ( obj ) ;
}
} ;
items [ 1 ] = obj ;
obj = {
key : "_get" ,
value ( arg0 ) {
let customKey ;
let item ;
let layoutSize ;
let layoutStart ;
let pendingItems ;
let section ;
let type ;
( { type , layoutStart , layoutSize , customKey , section , item , pendingItems } = arg0 ) ;
if ( null == customKey ) {
const _HermesInternal = HermesInternal ;
customKey = "" + type + ":" + section + ":" + item ;
}
if ( null == arg0 . items [ customKey ] ) {
let obj = { type , key : - 1 , layoutStart , layoutSize , section , item , recyclerKey : customKey } ;
pendingItems . push ( obj ) ;
} else {
obj = { } ;
2026-07-23 10:11:24 +00:00
const merged = Object . assign ( tmp7 ) ;
2026-07-20 16:05:17 +00:00
obj . layoutStart = layoutStart ;
obj . layoutSize = layoutSize ;
obj . section = section ;
obj . item = item ;
2026-07-23 10:11:24 +00:00
delete tmp [ tmp2 ] ;
2026-07-20 16:05:17 +00:00
}
return obj ;
}
} ;
items [ 2 ] = obj ;
items [ 3 ] = {
key : "fill" ,
value ( arg0 ) {
2026-07-23 10:11:24 +00:00
const self = this ;
let closure_1 = arg0 ;
const item = outer1_1 ( outer1_2 [ 10 ] ) . forEach ( outer1_19 , ( arg0 ) = > {
const tmp = outer2_8 ( self . _itemsForType ( arg0 ) , 2 ) ;
self . _fill ( tmp [ 0 ] , tmp [ 1 ] , closure_1 ) ;
2026-07-20 16:05:17 +00:00
} ) ;
}
} ;
items [ 4 ] = {
key : "_fill" ,
value ( arg0 , arg1 , arg2 ) {
let length ;
let sum1 ;
const FastListItemRecycler = arg1 ;
2026-07-23 10:11:24 +00:00
let c1 = 0 ;
2026-07-20 16:05:17 +00:00
if ( ! arg2 ) {
2026-07-23 10:11:24 +00:00
const item = outer1_1 ( outer1_2 [ 10 ] ) . forEach ( arg0 , ( arg0 ) = > {
if ( null == table [ closure_1 ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
tmp2 . key = tmp ;
closure_1 = closure_1 + 1 ;
}
} ) ;
2026-07-23 10:11:24 +00:00
const arr = outer1_1 ( outer1_2 [ 10 ] ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( c1 < arg1 . length ) {
2026-07-20 16:05:17 +00:00
do {
2026-07-23 10:11:24 +00:00
let tmp5 = c1 ;
let tmp6 = FastListItemRecycler ;
let sum = FastListItemRecycler . _LAST_KEY + 1 ;
FastListItemRecycler . _LAST_KEY = sum ;
arg1 [ c1 ] . key = sum ;
let tmp8 = c1 ;
sum1 = c1 + 1 ;
c1 = sum1 ;
2026-07-20 16:05:17 +00:00
length = arg1 . length ;
} while ( sum1 < length ) ;
}
arg1 . length = 0 ;
}
} ;
return callback2 ( FastListItemRecycler , items ) ;
2026-07-23 10:11:24 +00:00
} ) ( ) ;
let closure_20 = tmp5 ;
2026-07-20 16:05:17 +00:00
tmp5 . _LAST_KEY = 0 ;
2026-07-23 10:11:24 +00:00
let tmp6 = ( ( ) = > {
2026-07-20 16:05:17 +00:00
class FastListComputer {
constructor ( arg0 ) {
2026-07-23 10:11:24 +00:00
tmp = outer1_9 ( this , FastListComputer ) ;
2026-07-20 16:05:17 +00:00
this . chunkSize = 0 ;
this . uniform = false ;
this . dataCache = [ ] ;
this . size = 0 ;
this . dirty = true ;
this . lastStartChunk = - 1 ;
this . lastEndChunk = - 1 ;
this . items = [ ] ;
this . persistantItemData = [ ] ;
this . disableRecycling = false ;
this . props = arg0 ;
updatePropsResult = this . updateProps ( arg0 ) ;
return ;
}
}
let obj = {
key : "updateProps" ,
value ( props ) {
const self = this ;
let tmp2 = ! tmp ;
2026-07-23 10:11:24 +00:00
if ( ! this . dirty ) {
tmp2 = ! outer1_1 ( outer1_2 [ 11 ] ) ( props , self . props ) ;
2026-07-20 16:05:17 +00:00
}
self . dirty = tmp2 ;
self . props = props ;
self . uniform = "number" === typeof props . itemSize ;
}
} ;
2026-07-23 10:11:24 +00:00
let items = [ obj , , , , , , , , , , , , , , , , ] ;
2026-07-20 16:05:17 +00:00
obj = {
key : "setInfo" ,
value ( arg0 ) {
const self = this ;
const rounded = Math . ceil ( arg0 / 4 ) ;
let tmp3 = ! tmp2 ;
2026-07-23 10:11:24 +00:00
if ( ! this . dirty ) {
2026-07-20 16:05:17 +00:00
tmp3 = rounded !== self . chunkSize ;
}
self . dirty = tmp3 ;
self . chunkSize = rounded ;
}
} ;
items [ 1 ] = obj ;
obj = {
key : "getSizeForHeader" ,
value() {
const headerSize = this . props . headerSize ;
let num = 0 ;
if ( undefined !== headerSize ) {
num = headerSize ;
}
let numResult = num ;
if ( "number" !== typeof num ) {
numResult = num ( ) ;
}
return numResult ;
}
} ;
items [ 2 ] = obj ;
items [ 3 ] = {
key : "getSizeForFooter" ,
value() {
const footerSize = this . props . footerSize ;
let num = 0 ;
if ( undefined !== footerSize ) {
num = footerSize ;
}
let numResult = num ;
if ( "number" !== typeof num ) {
numResult = num ( ) ;
}
return numResult ;
}
} ;
items [ 4 ] = {
key : "getSizeForSection" ,
2026-07-23 10:11:24 +00:00
value ( c4 ) {
2026-07-20 16:05:17 +00:00
const sectionSize = this . props . sectionSize ;
let num = 0 ;
if ( undefined !== sectionSize ) {
num = sectionSize ;
}
let numResult = num ;
if ( "number" !== typeof num ) {
2026-07-23 10:11:24 +00:00
numResult = num ( c4 ) ;
2026-07-20 16:05:17 +00:00
}
return numResult ;
}
} ;
items [ 5 ] = {
key : "getSizeForItem" ,
value ( arg0 , arg1 ) {
const itemSize = this . props . itemSize ;
let itemSizeResult = itemSize ;
if ( "number" !== typeof itemSize ) {
itemSizeResult = itemSize ( arg0 , arg1 ) ;
}
return itemSizeResult ;
}
} ;
items [ 6 ] = {
key : "getSizeForSectionFooter" ,
2026-07-23 10:11:24 +00:00
value ( c4 ) {
2026-07-20 16:05:17 +00:00
const sectionFooterSize = this . props . sectionFooterSize ;
let num = 0 ;
if ( undefined !== sectionFooterSize ) {
num = sectionFooterSize ;
}
let numResult = num ;
if ( "number" !== typeof num ) {
2026-07-23 10:11:24 +00:00
numResult = num ( c4 ) ;
2026-07-20 16:05:17 +00:00
}
return numResult ;
}
} ;
items [ 7 ] = {
key : "getChunk" ,
value ( arg0 ) {
const self = this ;
const dataCache = this . dataCache ;
let diff = dataCache . length - 1 ;
if ( null != this . chunkCache ) {
if ( arg0 >= self . chunkCache . start ) {
if ( arg0 <= self . chunkCache . end ) {
return self . chunkCache ;
}
}
}
let num = 0 ;
if ( 0 <= diff ) {
const sum = num + ( ( diff - num ) / 2 | 0 ) ;
while ( null != dataCache [ sum ] ) {
if ( arg0 >= tmp3 . start ) {
if ( arg0 <= tmp3 . end ) {
self . chunkCache = tmp3 ;
return tmp3 ;
}
}
if ( arg0 < tmp3 . start ) {
diff = sum - 1 ;
let sum1 = num ;
num = sum1 ;
2026-07-23 10:11:24 +00:00
if ( sum1 <= diff ) {
continue ;
} else {
break ;
}
2026-07-20 16:05:17 +00:00
break ;
} else if ( arg0 <= tmp3 . end ) {
break ;
} else {
sum1 = sum + 1 ;
}
break ;
}
}
}
} ;
items [ 8 ] = {
key : "compute" ,
value ( lastStartChunk , lastEndChunk ) {
let getRecyclerKey ;
let iter10 ;
let iter12 ;
let iter14 ;
let iter2 ;
let iter7 ;
let layoutSize ;
let layoutSize2 ;
let layoutStart3 ;
let layoutStart4 ;
let section ;
let section2 ;
let section3 ;
let stickyHeaderFooter ;
let tmp ;
let tmp90 ;
let tmp91 ;
let type ;
let type2 ;
let type3 ;
let flag = arg3 ;
const self = this ;
2026-07-23 10:11:24 +00:00
let closure_0 = lastStartChunk ;
let closure_1 = lastEndChunk ;
2026-07-20 16:05:17 +00:00
if ( arg3 === undefined ) {
flag = false ;
}
getRecyclerKey = undefined ;
let items ;
let obj3 ;
2026-07-23 10:11:24 +00:00
let c6 ;
2026-07-20 16:05:17 +00:00
function addInitialSection ( section , layoutStart , layoutSize , layoutStart2 ) {
2026-07-23 10:11:24 +00:00
items . push ( obj3 . get ( outer2_19 . SECTION , layoutStart , layoutSize , getRecyclerKey ( outer2_19 . SECTION , section ) , section ) ) ;
2026-07-20 16:05:17 +00:00
const sum = layoutStart + layoutSize ;
if ( sum < layoutStart2 ) {
2026-07-23 10:11:24 +00:00
createFakeSharedValue = createFakeSharedValue + 1 ;
items . push ( obj3 . get ( outer2_19 . SPACER , sum , layoutStart2 - sum , undefined , 0 , createFakeSharedValue ) ) ;
2026-07-20 16:05:17 +00:00
}
}
function isVisible ( layoutStart , layoutSize ) {
let tmp = ! flag ;
if ( ! tmp ) {
2026-07-23 10:11:24 +00:00
let tmp4 = layoutStart >= closure_0 - layoutSize ;
2026-07-20 16:05:17 +00:00
if ( tmp4 ) {
2026-07-23 10:11:24 +00:00
tmp4 = layoutStart < closure_1 ;
2026-07-20 16:05:17 +00:00
}
tmp = tmp4 ;
}
return tmp ;
}
if ( self . dirty ) {
let fullComputeResult = self . fullCompute ( ) ;
let flag2 = true ;
} else {
flag2 = false ;
if ( lastStartChunk === self . lastStartChunk ) {
flag2 = false ;
if ( lastEndChunk === self . lastEndChunk ) {
let obj = { } ;
( { size : obj.size , items : obj.items } = self ) ;
return obj ;
}
}
}
( { stickyHeaderFooter , getRecyclerKey } = self . props ) ;
if ( undefined === getRecyclerKey ) {
2026-07-23 10:11:24 +00:00
getRecyclerKey = outer1_35 ;
2026-07-20 16:05:17 +00:00
}
self . lastStartChunk = lastStartChunk ;
self . lastEndChunk = lastEndChunk ;
const map = new Map ( ) ;
2026-07-23 10:11:24 +00:00
const tmp2 = outer1_32 ( self . persistantItemData ) ;
2026-07-20 16:05:17 +00:00
let iter = tmp2 ( ) ;
if ( ! iter . done ) {
do {
let value = iter . value ;
2026-07-23 10:11:24 +00:00
let tmp3 = outer1_19 ;
2026-07-20 16:05:17 +00:00
let item ;
( { type , section } = value ) ;
2026-07-23 10:11:24 +00:00
if ( value . type === outer1_19 . ITEM ) {
2026-07-20 16:05:17 +00:00
item = value . item ;
}
let recyclerKey = getRecyclerKey ( type , section , item ) ;
if ( null != recyclerKey ) {
let result = map . set ( recyclerKey , value ) ;
}
iter2 = tmp2 ( ) ;
iter = iter2 ;
} while ( ! iter2 . done ) ;
}
let rounded = Math . floor ( lastStartChunk / self . chunkSize ) ;
const bound = Math . max ( Math . ceil ( lastEndChunk / self . chunkSize ) , rounded ) ;
let result1 = rounded * self . chunkSize ;
items = [ ] ;
self . items = items ;
2026-07-23 10:11:24 +00:00
obj3 = new outer1_20 ( arg2 ) ;
obj = { initialSection : - 1 , initialItem : - 1 , lastSection : - 1 , lastItem : - 1 } ;
c6 = 0 ;
2026-07-20 16:05:17 +00:00
const set = new Set ( ) ;
if ( rounded <= bound ) {
do {
let chunk = self . getChunk ( rounded ) ;
let tmp12 = rounded ;
if ( null != chunk ) {
let addResult = set . add ( chunk ) ;
}
rounded = rounded + 1 ;
} while ( rounded <= bound ) ;
}
2026-07-23 10:11:24 +00:00
const tmp14 = outer1_32 ( set ) ;
2026-07-20 16:05:17 +00:00
const iter3 = tmp14 ( ) ;
let iter4 = iter3 ;
if ( ! iter3 . done ) {
do {
value = iter4 . value ;
let tmp20 = result1 ;
let tmp21 = tmp15 ;
let tmp22 = tmp16 ;
let tmp23 = tmp17 ;
let tmp24 = tmp18 ;
let tmp25 = tmp19 ;
if ( null != value ) {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_32 ;
fullComputeResult = outer1_32 ( value . data ) ;
2026-07-20 16:05:17 +00:00
let iter15 = fullComputeResult ( ) ;
let tmp80 = result1 ;
let iter6 = iter15 ;
let tmp81 = tmp16 ;
let tmp82 = tmp17 ;
let tmp83 = tmp18 ;
let tmp84 = tmp19 ;
tmp20 = result1 ;
fullComputeResult = iter15 ;
tmp21 = tmp15 ;
tmp22 = tmp16 ;
tmp23 = tmp17 ;
tmp24 = tmp18 ;
tmp25 = tmp19 ;
if ( ! iter15 . done ) {
do {
value = iter6 . value ;
let sum = tmp80 ;
let tmp27 = tmp81 ;
let tmp28 = tmp82 ;
let tmp29 = tmp83 ;
let tmp30 = tmp84 ;
if ( value . layoutStart + value . layoutSize >= tmp80 ) {
let type4 = value . type ;
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
if ( outer1_19 . HEADER === type4 ) {
2026-07-20 16:05:17 +00:00
if ( isVisible ( value . layoutStart , value . layoutSize ) ) {
2026-07-23 10:11:24 +00:00
let tmp77 = outer1_19 ;
2026-07-20 16:05:17 +00:00
let tmp78 = obj3 ;
2026-07-23 10:11:24 +00:00
let arr = items . push ( obj3 . get ( outer1_19 . HEADER , value . layoutStart , value . layoutSize , undefined ) ) ;
2026-07-20 16:05:17 +00:00
}
sum = value . layoutStart + value . layoutSize ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp29 = tmp83 ;
tmp30 = tmp84 ;
} else {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
if ( outer1_19 . SECTION === type4 ) {
2026-07-20 16:05:17 +00:00
let tmp68 = tmp81 ;
if ( isVisible ( value . layoutStart , value . layoutSize ) ) {
if ( - 1 === obj . initialSection ) {
( { section : obj4.initialSection , section : obj4.lastSection } = value ) ;
} else {
obj . lastSection = value . section ;
}
2026-07-23 10:11:24 +00:00
let tmp69 = outer1_19 ;
let recyclerKey1 = getRecyclerKey ( outer1_19 . SECTION , value . section ) ;
2026-07-20 16:05:17 +00:00
let tmp71 = null != recyclerKey1 && map . has ( recyclerKey1 ) ;
if ( tmp71 ) {
let deleteResult = map . delete ( recyclerKey1 ) ;
}
2026-07-23 10:11:24 +00:00
let tmp73 = outer1_19 ;
2026-07-20 16:05:17 +00:00
let tmp74 = obj3 ;
let tmp75 = recyclerKey1 ;
2026-07-23 10:11:24 +00:00
arr = items . push ( obj3 . get ( outer1_19 . SECTION , value . layoutStart , value . layoutSize , recyclerKey1 , value . section ) ) ;
2026-07-20 16:05:17 +00:00
tmp68 = recyclerKey1 ;
}
sum = value . layoutStart + value . layoutSize ;
tmp27 = tmp68 ;
tmp28 = tmp82 ;
tmp29 = tmp83 ;
tmp30 = tmp84 ;
} else {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
if ( outer1_19 . ITEM === type4 ) {
2026-07-20 16:05:17 +00:00
if ( null == value . uniform ) {
let tmp58 = tmp82 ;
if ( isVisible ( value . layoutStart , value . layoutSize ) ) {
if ( 0 === items . length ) {
let addInitialSectionResult = addInitialSection ( value . section , value . sectionData . layoutStart , value . sectionData . layoutSize , value . layoutStart ) ;
}
if ( - 1 === obj . initialSection ) {
obj . initialSection = value . section ;
}
if ( - 1 === obj . initialItem ) {
obj . initialItem = value . item ;
}
( { section : obj4.lastSection , item : obj4.lastItem } = value ) ;
2026-07-23 10:11:24 +00:00
let tmp60 = outer1_19 ;
let recyclerKey2 = getRecyclerKey ( outer1_19 . ITEM , value . section , value . item ) ;
2026-07-20 16:05:17 +00:00
let tmp62 = null != recyclerKey2 && map . has ( recyclerKey2 ) ;
if ( tmp62 ) {
let deleteResult1 = map . delete ( recyclerKey2 ) ;
}
2026-07-23 10:11:24 +00:00
let tmp64 = outer1_19 ;
2026-07-20 16:05:17 +00:00
let tmp65 = obj3 ;
let tmp66 = recyclerKey2 ;
2026-07-23 10:11:24 +00:00
let arr1 = items . push ( obj3 . get ( outer1_19 . ITEM , value . layoutStart , value . layoutSize , recyclerKey2 , value . section , value . item ) ) ;
2026-07-20 16:05:17 +00:00
tmp58 = recyclerKey2 ;
}
sum = value . layoutStart + value . layoutSize ;
tmp28 = tmp58 ;
tmp27 = tmp81 ;
tmp29 = tmp83 ;
tmp30 = tmp84 ;
} else {
let num = 0 ;
if ( tmp80 > value . layoutStart ) {
let _Math = Math ;
num = Math . floor ( ( tmp80 - value . layoutStart ) / value . itemSize ) ;
}
let sum1 = value . layoutStart + value . itemSize * num ;
sum = sum1 ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp29 = num ;
tmp30 = tmp84 ;
if ( sum1 < bound * self . chunkSize ) {
fullComputeResult = sum1 ;
fullComputeResult = num ;
let tmp54 = tmp84 ;
sum = sum1 ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp30 = tmp84 ;
tmp29 = num ;
if ( num < value . items ) {
while ( true ) {
let tmp41 = fullComputeResult ;
if ( isVisible ( fullComputeResult , value . itemSize ) ) {
if ( 0 === items . length ) {
let tmp42 = fullComputeResult ;
let addInitialSectionResult1 = addInitialSection ( value . section , value . sectionData . layoutStart , value . sectionData . layoutSize , tmp41 ) ;
}
if ( - 1 === obj . initialSection ) {
obj . initialSection = value . section ;
}
if ( - 1 === obj . initialItem ) {
obj . initialItem = fullComputeResult ;
}
obj . lastSection = value . section ;
obj . lastItem = fullComputeResult ;
2026-07-23 10:11:24 +00:00
let tmp44 = outer1_19 ;
let recyclerKey3 = getRecyclerKey ( outer1_19 . ITEM , value . section , fullComputeResult ) ;
2026-07-20 16:05:17 +00:00
let tmp46 = null != recyclerKey3 && map . has ( recyclerKey3 ) ;
if ( tmp46 ) {
let deleteResult2 = map . delete ( recyclerKey3 ) ;
}
2026-07-23 10:11:24 +00:00
let tmp48 = outer1_19 ;
2026-07-20 16:05:17 +00:00
let tmp49 = obj3 ;
let tmp50 = fullComputeResult ;
let tmp51 = recyclerKey3 ;
let tmp52 = fullComputeResult ;
2026-07-23 10:11:24 +00:00
let arr2 = items . push ( obj3 . get ( outer1_19 . ITEM , tmp41 , value . itemSize , recyclerKey3 , value . section , fullComputeResult ) ) ;
2026-07-20 16:05:17 +00:00
tmp54 = recyclerKey3 ;
}
let sum2 = fullComputeResult + value . itemSize ;
let sum3 = fullComputeResult + 1 ;
let tmp57 = tmp54 ;
sum = sum2 ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp29 = sum3 ;
tmp30 = tmp54 ;
if ( sum2 >= bound * self . chunkSize ) {
break ;
} else {
fullComputeResult = sum2 ;
fullComputeResult = sum3 ;
sum = sum2 ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp30 = tmp54 ;
tmp29 = sum3 ;
2026-07-23 10:11:24 +00:00
if ( sum3 < value . items ) {
continue ;
} else {
break ;
}
2026-07-20 16:05:17 +00:00
break ;
}
}
}
}
}
} else {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
if ( outer1_19 . SECTION_FOOTER === type4 ) {
2026-07-20 16:05:17 +00:00
if ( isVisible ( value . layoutStart , value . layoutSize ) ) {
if ( 0 === items . length ) {
let addInitialSectionResult2 = addInitialSection ( value . section , value . sectionData . layoutStart , value . sectionData . layoutSize , value . layoutStart ) ;
}
2026-07-23 10:11:24 +00:00
let tmp35 = outer1_19 ;
let SECTION_FOOTER = outer1_19 . SECTION_FOOTER ;
2026-07-20 16:05:17 +00:00
let layoutStart = value . layoutStart ;
let tmp36 = obj3 ;
let tmp37 = SECTION_FOOTER ;
let tmp38 = layoutStart ;
2026-07-23 10:11:24 +00:00
let arr3 = items . push ( obj3 . get ( SECTION_FOOTER , layoutStart , value . layoutSize , getRecyclerKey ( outer1_19 . SECTION_FOOTER , value . section ) , value . section ) ) ;
2026-07-20 16:05:17 +00:00
}
sum = value . layoutStart + value . layoutSize ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp29 = tmp83 ;
tmp30 = tmp84 ;
} else {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
sum = tmp80 ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp29 = tmp83 ;
tmp30 = tmp84 ;
2026-07-23 10:11:24 +00:00
if ( outer1_19 . FOOTER === type4 ) {
2026-07-20 16:05:17 +00:00
if ( isVisible ( value . layoutStart , value . layoutSize ) ) {
2026-07-23 10:11:24 +00:00
let tmp31 = outer1_19 ;
2026-07-20 16:05:17 +00:00
let tmp32 = obj3 ;
2026-07-23 10:11:24 +00:00
let arr4 = items . push ( obj3 . get ( outer1_19 . FOOTER , value . layoutStart , value . layoutSize , undefined ) ) ;
2026-07-20 16:05:17 +00:00
}
sum = value . layoutStart + value . layoutSize ;
tmp27 = tmp81 ;
tmp28 = tmp82 ;
tmp29 = tmp83 ;
tmp30 = tmp84 ;
}
}
}
}
}
}
2026-07-23 10:11:24 +00:00
iter5 = fullComputeResult ( ) ;
2026-07-20 16:05:17 +00:00
tmp80 = sum ;
tmp81 = tmp27 ;
tmp82 = tmp28 ;
tmp83 = tmp29 ;
tmp84 = tmp30 ;
iter6 = iter5 ;
tmp20 = sum ;
let tmp85 = iter5 ;
let tmp86 = fullComputeResult ;
tmp21 = value ;
tmp22 = tmp27 ;
tmp23 = tmp28 ;
tmp24 = tmp29 ;
tmp25 = tmp30 ;
} while ( ! iter5 . done ) ;
}
}
iter7 = tmp14 ( ) ;
result1 = tmp20 ;
2026-07-23 10:11:24 +00:00
tmp15 = tmp21 ;
tmp16 = tmp22 ;
tmp17 = tmp23 ;
tmp18 = tmp24 ;
tmp19 = tmp25 ;
2026-07-20 16:05:17 +00:00
iter4 = iter7 ;
} while ( ! iter7 . done ) ;
}
const items1 = [ ] ;
const items2 = [ ] ;
2026-07-23 10:11:24 +00:00
const tmp87 = outer1_32 ( map ) ;
2026-07-20 16:05:17 +00:00
const iter8 = tmp87 ( ) ;
let iter9 = iter8 ;
let num2 = 0 ;
let num3 = 0 ;
let num4 = 0 ;
let num5 = 0 ;
if ( ! iter8 . done ) {
do {
2026-07-23 10:11:24 +00:00
let tmp88 = outer1_8 ;
let tmp89 = outer1_8 ( iter9 . value , 2 ) ;
2026-07-20 16:05:17 +00:00
[ tmp90 , tmp91 ] = tmp89 ;
if ( tmp91 . section < obj . initialSection ) {
let sum4 = num2 + tmp91 . layoutSize ;
let items3 = [ tmp90 , tmp91 ] ;
let arr5 = items1 . push ( items3 ) ;
let sum5 = num3 ;
} else if ( tmp91 . section > obj . lastSection ) {
sum5 = num3 + tmp91 . layoutSize ;
let items4 = [ tmp90 , tmp91 ] ;
let arr6 = items2 . push ( items4 ) ;
sum4 = num2 ;
} else {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
sum4 = num2 ;
sum5 = num3 ;
2026-07-23 10:11:24 +00:00
if ( tmp91 . type === outer1_19 . ITEM ) {
2026-07-20 16:05:17 +00:00
if ( tmp91 . section === obj . initialSection ) {
if ( tmp91 . item < obj . initialItem ) {
let sum6 = num2 + tmp91 . layoutSize ;
let items5 = [ tmp90 , tmp91 ] ;
let arr7 = items1 . push ( items5 ) ;
let sum7 = num3 ;
sum4 = sum6 ;
sum5 = sum7 ;
}
}
sum7 = num3 + tmp91 . layoutSize ;
let items6 = [ tmp90 , tmp91 ] ;
let arr8 = items2 . push ( items6 ) ;
sum6 = num2 ;
}
}
iter10 = tmp87 ( ) ;
num2 = sum4 ;
num3 = sum5 ;
iter9 = iter10 ;
num4 = sum4 ;
num5 = sum5 ;
} while ( ! iter10 . done ) ;
}
fullComputeResult = items [ 0 ] ;
if ( null != fullComputeResult ) {
if ( fullComputeResult . layoutStart > 0 ) {
const headerDataCache = self . headerDataCache ;
const layoutStart5 = fullComputeResult . layoutStart ;
fullComputeResult = stickyHeaderFooter ;
if ( stickyHeaderFooter ) {
fullComputeResult = null != headerDataCache ;
}
if ( fullComputeResult ) {
fullComputeResult = "HEADER" !== fullComputeResult . type ;
}
let layoutStart2 = layoutStart5 ;
if ( fullComputeResult ) {
if ( layoutStart5 - headerDataCache . layoutStart - headerDataCache . layoutSize > 0 ) {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = obj3 ;
2026-07-23 10:11:24 +00:00
fullComputeResult = items . unshift ( obj3 . get ( outer1_19 . SPACER , headerDataCache . layoutStart + headerDataCache . layoutSize , layoutStart5 - headerDataCache . layoutStart - headerDataCache . layoutSize , undefined , 0 , 0 ) ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = obj3 ;
2026-07-23 10:11:24 +00:00
fullComputeResult = items . unshift ( obj3 . get ( outer1_19 . HEADER , headerDataCache . layoutStart , headerDataCache . layoutSize , undefined ) ) ;
2026-07-20 16:05:17 +00:00
layoutStart2 = headerDataCache . layoutStart ;
}
const _Math2 = Math ;
fullComputeResult = Math . max ( layoutStart2 - num4 , 0 ) ;
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_32 ;
fullComputeResult = outer1_32 ( items1 ) ;
2026-07-20 16:05:17 +00:00
let iter11 = fullComputeResult ( ) ;
if ( ! iter11 . done ) {
do {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_8 ;
fullComputeResult = outer1_8 ( iter11 . value , 2 ) ;
2026-07-20 16:05:17 +00:00
[ tmp , tmp ] = fullComputeResult ;
( { type : type2 , layoutStart : layoutStart3 , layoutSize , section : section2 } = fullComputeResult ) ;
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = undefined ;
2026-07-23 10:11:24 +00:00
if ( fullComputeResult . type === outer1_19 . ITEM ) {
2026-07-20 16:05:17 +00:00
fullComputeResult = fullComputeResult . item ;
}
fullComputeResult = obj3 ;
fullComputeResult = type2 ;
fullComputeResult = layoutStart3 ;
fullComputeResult = layoutSize ;
fullComputeResult = section2 ;
fullComputeResult = items . unshift ( obj3 . get ( type2 , layoutStart3 , layoutSize , fullComputeResult , section2 , fullComputeResult ) ) ;
iter12 = fullComputeResult ( ) ;
iter11 = iter12 ;
} while ( ! iter12 . done ) ;
}
if ( fullComputeResult > 0 ) {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = obj3 ;
2026-07-23 10:11:24 +00:00
fullComputeResult = items . unshift ( obj3 . get ( outer1_19 . SPACER , 0 , fullComputeResult , undefined , 0 , 1 ) ) ;
2026-07-20 16:05:17 +00:00
}
}
}
fullComputeResult = items [ items . length - 1 ] ;
if ( null != fullComputeResult ) {
let size = fullComputeResult . layoutStart + fullComputeResult . layoutSize ;
} else {
size = self . size ;
}
if ( size < self . size ) {
const footerDataCache = self . footerDataCache ;
if ( stickyHeaderFooter ) {
stickyHeaderFooter = null != footerDataCache ;
}
if ( stickyHeaderFooter ) {
stickyHeaderFooter = "FOOTER" !== fullComputeResult . type ;
}
fullComputeResult = size ;
if ( stickyHeaderFooter ) {
if ( size < footerDataCache . layoutStart ) {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = obj3 ;
fullComputeResult = size ;
2026-07-23 10:11:24 +00:00
fullComputeResult = items . push ( obj3 . get ( outer1_19 . SPACER , size , footerDataCache . layoutStart + footerDataCache . layoutSize - size , undefined , 1 , 0 ) ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = obj3 ;
2026-07-23 10:11:24 +00:00
fullComputeResult = items . push ( obj3 . get ( outer1_19 . FOOTER , footerDataCache . layoutStart , footerDataCache . layoutSize , undefined ) ) ;
2026-07-20 16:05:17 +00:00
fullComputeResult = footerDataCache . layoutStart + footerDataCache . layoutSize ;
}
fullComputeResult = fullComputeResult + num5 ;
if ( fullComputeResult < self . size ) {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = obj3 ;
2026-07-23 10:11:24 +00:00
fullComputeResult = items . push ( obj3 . get ( outer1_19 . SPACER , fullComputeResult , self . size - fullComputeResult , undefined , 1 , 1 ) ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_32 ;
fullComputeResult = outer1_32 ( items2 ) ;
2026-07-20 16:05:17 +00:00
let iter13 = fullComputeResult ( ) ;
if ( ! iter13 . done ) {
do {
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_8 ;
fullComputeResult = outer1_8 ( iter13 . value , 2 ) ;
2026-07-20 16:05:17 +00:00
[ tmp , tmp ] = fullComputeResult ;
( { type : type3 , layoutStart : layoutStart4 , layoutSize : layoutSize2 , section : section3 } = fullComputeResult ) ;
2026-07-23 10:11:24 +00:00
fullComputeResult = outer1_19 ;
2026-07-20 16:05:17 +00:00
fullComputeResult = undefined ;
2026-07-23 10:11:24 +00:00
if ( fullComputeResult . type === outer1_19 . ITEM ) {
2026-07-20 16:05:17 +00:00
fullComputeResult = fullComputeResult . item ;
}
fullComputeResult = obj3 ;
fullComputeResult = type3 ;
fullComputeResult = layoutStart4 ;
fullComputeResult = layoutSize2 ;
fullComputeResult = section3 ;
fullComputeResult = items . push ( obj3 . get ( type3 , layoutStart4 , layoutSize2 , fullComputeResult , section3 , fullComputeResult ) ) ;
iter14 = fullComputeResult ( ) ;
iter13 = iter14 ;
} while ( ! iter14 . done ) ;
}
}
let disableRecycling = self . disableRecycling ;
if ( ! disableRecycling ) {
fullComputeResult = self . props . disableRecyclingOnFullCompute && flag2 ;
disableRecycling = fullComputeResult ;
}
fullComputeResult = obj3 . fill ( disableRecycling ) ;
obj = { size : self.size , items } ;
return obj ;
}
} ;
items [ 9 ] = {
key : "fullCompute" ,
value() {
let insetStart ;
let sections ;
2026-07-23 10:11:24 +00:00
let self = this ;
self = this ;
2026-07-20 16:05:17 +00:00
const props = this . props ;
( { sections , insetStart } = props ) ;
let num = 0 ;
if ( undefined !== insetStart ) {
num = insetStart ;
}
const insetEnd = props . insetEnd ;
let num2 = 0 ;
if ( undefined !== insetEnd ) {
num2 = insetEnd ;
}
let getRecyclerKey = props . getRecyclerKey ;
if ( undefined === getRecyclerKey ) {
2026-07-23 10:11:24 +00:00
getRecyclerKey = outer1_35 ;
2026-07-20 16:05:17 +00:00
}
const set = new Set ( self . props . persistantKeys ) ;
self . persistantItemData = [ ] ;
const items = [ ] ;
self . dataCache = items ;
self . chunkCache = undefined ;
const chunkSize = self . chunkSize ;
let closure_3 = num ;
self . headerDataCache = undefined ;
self . footerDataCache = undefined ;
function pushData ( closure_3 , arg1 , type ) {
closure_3 = closure_3 + ( arg1 - closure_3 ) ;
const bound = Math . max ( Math . floor ( closure_3 / chunkSize ) , 0 ) ;
const bound1 = Math . max ( Math . floor ( arg1 / chunkSize ) - 1 , bound ) ;
let chunk = self . getChunk ( bound ) ;
if ( null == chunk ) {
const obj = { start : bound , end : bound1 , data : [ ] } ;
items . push ( obj ) ;
chunk = obj ;
}
2026-07-23 10:11:24 +00:00
if ( type . type === outer2_19 . HEADER ) {
2026-07-20 16:05:17 +00:00
self . headerDataCache = type ;
2026-07-23 10:11:24 +00:00
} else if ( type . type === outer2_19 . FOOTER ) {
2026-07-20 16:05:17 +00:00
self . footerDataCache = type ;
}
chunk . end = bound1 ;
const data = chunk . data ;
data . push ( type ) ;
}
const sizeForHeader = self . getSizeForHeader ( ) ;
if ( sizeForHeader > 0 ) {
2026-07-23 10:11:24 +00:00
let obj = { type : outer1_19 . HEADER , layoutStart : closure_3 , layoutSize : sizeForHeader } ;
2026-07-20 16:05:17 +00:00
pushData ( closure_3 , closure_3 + sizeForHeader , obj ) ;
}
let num3 = 0 ;
if ( 0 < sections . length ) {
do {
let tmp10 = sections [ num3 ] ;
let tmp11 = tmp6 ;
let tmp12 = tmp7 ;
let tmp13 = tmp8 ;
let tmp14 = tmp9 ;
if ( 0 !== tmp10 ) {
let tmp55 = closure_3 ;
let sizeForSection = self . getSizeForSection ( num3 ) ;
obj = { } ;
2026-07-23 10:11:24 +00:00
let tmp57 = outer1_19 ;
obj . type = outer1_19 . SECTION ;
2026-07-20 16:05:17 +00:00
obj . layoutStart = closure_3 ;
obj . layoutSize = sizeForSection ;
obj . section = num3 ;
if ( set . size > 0 ) {
2026-07-23 10:11:24 +00:00
let tmp15 = outer1_19 ;
let recyclerKey = getRecyclerKey ( outer1_19 . SECTION , num3 ) ;
2026-07-20 16:05:17 +00:00
let tmp17 = null != recyclerKey && set . has ( recyclerKey ) ;
2026-07-23 10:11:24 +00:00
tmp6 = recyclerKey ;
2026-07-20 16:05:17 +00:00
if ( tmp17 ) {
let persistantItemData = self . persistantItemData ;
let arr = persistantItemData . push ( obj ) ;
let deleteResult = set . delete ( recyclerKey ) ;
tmp6 = recyclerKey ;
}
}
let pushDataResult1 = pushData ( tmp55 , tmp55 + sizeForSection , obj ) ;
if ( self . uniform ) {
let sizeForItem = self . getSizeForItem ( num3 , 0 ) ;
let tmp36 = closure_3 ;
let obj1 = { } ;
2026-07-23 10:11:24 +00:00
let tmp37 = outer1_19 ;
obj1 . type = outer1_19 . ITEM ;
2026-07-20 16:05:17 +00:00
obj1 . uniform = true ;
obj1 . layoutStart = closure_3 ;
obj1 . itemSize = sizeForItem ;
obj1 . layoutSize = sizeForItem * tmp10 ;
obj1 . section = num3 ;
obj1 . items = tmp10 ;
obj1 . sectionData = obj ;
let pushDataResult2 = pushData ( closure_3 , closure_3 + sizeForItem * tmp10 , obj1 ) ;
let tmp22 = closure_3 ;
let num5 = tmp7 ;
let tmp23 = tmp8 ;
let tmp24 = tmp9 ;
} else {
let num4 = 0 ;
let tmp21 = tmp9 ;
tmp22 = tmp55 ;
num5 = 0 ;
tmp23 = tmp8 ;
tmp24 = tmp9 ;
if ( 0 < tmp10 ) {
do {
let sizeForItem1 = self . getSizeForItem ( num3 , num4 ) ;
let obj2 = { } ;
2026-07-23 10:11:24 +00:00
let tmp27 = outer1_19 ;
obj2 . type = outer1_19 . ITEM ;
2026-07-20 16:05:17 +00:00
obj2 . layoutStart = closure_3 ;
obj2 . layoutSize = sizeForItem1 ;
obj2 . section = num3 ;
obj2 . item = num4 ;
obj2 . sectionData = obj ;
let tmp26 = closure_3 ;
let pushDataResult3 = pushData ( closure_3 , closure_3 + sizeForItem1 , obj2 ) ;
let tmp29 = num4 ;
if ( set . size > 0 ) {
2026-07-23 10:11:24 +00:00
let tmp30 = outer1_19 ;
let recyclerKey1 = getRecyclerKey ( outer1_19 . ITEM , num3 , num4 ) ;
2026-07-20 16:05:17 +00:00
let tmp32 = null != recyclerKey1 && set . has ( recyclerKey1 ) ;
tmp21 = recyclerKey1 ;
if ( tmp32 ) {
let persistantItemData1 = self . persistantItemData ;
arr = persistantItemData1 . push ( obj2 ) ;
let deleteResult1 = set . delete ( recyclerKey1 ) ;
tmp21 = recyclerKey1 ;
}
}
num4 = num4 + 1 ;
tmp22 = tmp26 ;
tmp23 = obj2 ;
tmp24 = tmp21 ;
num5 = num4 ;
} while ( num4 < tmp10 ) ;
}
}
let sizeForSectionFooter = self . getSizeForSectionFooter ( num3 ) ;
let tmp40 = tmp22 ;
let tmp41 = sizeForSection ;
let tmp42 = obj ;
tmp11 = tmp6 ;
tmp12 = num5 ;
tmp13 = tmp23 ;
tmp14 = tmp24 ;
let tmp43 = sizeForSectionFooter ;
if ( sizeForSectionFooter > 0 ) {
let tmp44 = closure_3 ;
let obj3 = { } ;
2026-07-23 10:11:24 +00:00
let tmp45 = outer1_19 ;
obj3 . type = outer1_19 . SECTION_FOOTER ;
2026-07-20 16:05:17 +00:00
obj3 . layoutStart = closure_3 ;
obj3 . layoutSize = sizeForSectionFooter ;
obj3 . section = num3 ;
obj3 . sectionData = obj ;
let pushDataResult4 = pushData ( closure_3 , closure_3 + sizeForSectionFooter , obj3 ) ;
let tmp47 = closure_3 ;
let tmp48 = sizeForSection ;
let tmp49 = obj ;
tmp11 = tmp6 ;
tmp12 = num5 ;
tmp13 = tmp23 ;
tmp14 = tmp24 ;
let tmp50 = sizeForSectionFooter ;
}
}
num3 = num3 + 1 ;
tmp6 = tmp11 ;
2026-07-23 10:11:24 +00:00
tmp7 = tmp12 ;
tmp8 = tmp13 ;
tmp9 = tmp14 ;
2026-07-20 16:05:17 +00:00
} while ( num3 < sections . length ) ;
}
const sizeForFooter = self . getSizeForFooter ( ) ;
if ( sizeForFooter > 0 ) {
2026-07-23 10:11:24 +00:00
const obj4 = { type : outer1_19 . FOOTER , layoutStart : closure_3 , layoutSize : sizeForFooter } ;
2026-07-20 16:05:17 +00:00
pushData ( closure_3 , closure_3 + sizeForFooter , obj4 ) ;
}
closure_3 = closure_3 + num2 ;
2026-07-23 10:11:24 +00:00
self . size = outer1_12 . roundToNearestPixel ( closure_3 ) ;
2026-07-20 16:05:17 +00:00
self . dirty = false ;
}
} ;
items [ 10 ] = {
key : "getChunkDataFromSectionItem" ,
value ( arg0 , arg1 ) {
const self = this ;
if ( this . dirty ) {
self . fullCompute ( ) ;
}
2026-07-23 10:11:24 +00:00
const tmp2 = outer1_32 ( self . dataCache ) ;
2026-07-20 16:05:17 +00:00
const iter = tmp2 ( ) ;
let iter2 = iter ;
if ( ! iter . done ) {
while ( true ) {
let value = iter2 . value ;
2026-07-23 10:11:24 +00:00
let tmp3 = outer1_32 ;
let tmp4 = outer1_32 ( value . data ) ;
2026-07-20 16:05:17 +00:00
let iter3 = tmp4 ( ) ;
if ( ! iter3 . done ) {
while ( true ) {
value = iter3 . value ;
let type = value . type ;
2026-07-23 10:11:24 +00:00
let tmp5 = outer1_19 ;
if ( outer1_19 . ITEM === type ) {
2026-07-20 16:05:17 +00:00
if ( null != arg1 ) {
if ( true === value . uniform ) {
if ( value . section === arg0 ) {
return arg1 > value . items ? undefined : value ;
}
}
if ( null == value . uniform ) {
if ( value . section === arg0 ) {
if ( value . item === arg1 ) {
return value ;
}
}
}
}
} else {
2026-07-23 10:11:24 +00:00
let tmp6 = outer1_19 ;
if ( outer1_19 . SECTION === type ) {
2026-07-20 16:05:17 +00:00
if ( value . section > arg0 ) {
break ;
} else if ( null == arg1 ) {
return value ;
}
}
}
let iter4 = tmp4 ( ) ;
iter3 = iter4 ;
let tmp7 = value ;
continue ;
}
}
let iter5 = tmp2 ( ) ;
iter2 = iter5 ;
}
}
}
} ;
items [ 11 ] = {
key : "getChunkIndexFromSectionItem" ,
value ( chunk ) {
let padBottom ;
let targetItem ;
let targetSection ;
let value ;
const self = this ;
( { targetSection , targetItem , padBottom } = chunk ) ;
if ( padBottom === undefined ) {
padBottom = 16 ;
}
2026-07-23 10:11:24 +00:00
const tmp = outer1_32 ( chunk . chunk . data ) ;
2026-07-20 16:05:17 +00:00
let iter = tmp ( ) ;
if ( ! iter . done ) {
while ( true ) {
value = iter . value ;
let type = value . type ;
2026-07-23 10:11:24 +00:00
let tmp2 = outer1_19 ;
if ( outer1_19 . ITEM === type ) {
2026-07-20 16:05:17 +00:00
if ( value . section === targetSection ) {
if ( null != targetItem ) {
if ( value . uniform ) {
if ( targetItem < value . items ) {
let sum = value . layoutStart + value . sectionData . layoutSize + value . itemSize * targetItem ;
let obj = { } ;
let tmp4 = globalThis ;
let _Math = Math ;
obj . startIndex = Math . floor ( sum / self . chunkSize ) ;
let _Math2 = Math ;
obj . endIndex = Math . floor ( ( sum + value . itemSize + padBottom ) / self . chunkSize ) ;
return obj ;
}
} else if ( value . item < targetItem ) {
if ( value . item === targetItem ) {
obj = { } ;
let tmp7 = globalThis ;
let _Math5 = Math ;
obj . startIndex = Math . floor ( ( value . layoutStart - value . sectionData . layoutSize ) / self . chunkSize ) ;
let _Math6 = Math ;
obj . endIndex = Math . floor ( ( value . layoutStart + value . layoutSize + padBottom ) / self . chunkSize ) ;
return obj ;
}
}
}
}
} else {
2026-07-23 10:11:24 +00:00
let tmp5 = outer1_19 ;
if ( outer1_19 . SECTION === type ) {
2026-07-20 16:05:17 +00:00
if ( null == targetItem ) {
if ( targetSection >= value . section ) {
if ( targetSection === value . section ) {
break ;
}
}
}
}
}
let iter2 = tmp ( ) ;
iter = iter2 ;
}
obj = { } ;
const _Math3 = Math ;
obj . startIndex = Math . floor ( value . layoutStart / self . chunkSize ) ;
const _Math4 = Math ;
obj . endIndex = Math . floor ( ( value . layoutStart + value . layoutSize + padBottom ) / self . chunkSize ) ;
return obj ;
}
}
} ;
items [ 12 ] = {
key : "computeScrollPosition" ,
value ( arg0 , arg1 , arg2 ) {
const self = this ;
if ( null == arg2 ) {
if ( self . dirty ) {
self . fullCompute ( ) ;
}
if ( arg1 < 0 ) {
2026-07-23 10:11:24 +00:00
return { scrollPosition : 0 , size : 0 , sectionOffset : 0 } ;
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
const tmp9 = outer1_32 ( tmp2 ) ;
2026-07-20 16:05:17 +00:00
const iter5 = tmp9 ( ) ;
let iter4 = iter5 ;
if ( ! iter5 . done ) {
while ( true ) {
2026-07-23 10:11:24 +00:00
let tmp3 = outer1_32 ;
let tmp4 = outer1_32 ( iter4 . value . data ) ;
2026-07-20 16:05:17 +00:00
let iter = tmp4 ( ) ;
if ( ! iter . done ) {
while ( true ) {
let value = iter . value ;
let type = value . type ;
2026-07-23 10:11:24 +00:00
let tmp5 = outer1_19 ;
if ( outer1_19 . ITEM === type ) {
2026-07-20 16:05:17 +00:00
if ( null != arg2 ) {
if ( true === value . uniform ) {
if ( value . section === arg1 ) {
break ;
}
}
if ( null == value . uniform ) {
if ( value . section === arg1 ) {
if ( value . item === arg2 ) {
let obj = { } ;
( { layoutStart : obj3.scrollPosition , layoutSize : obj3.size } = value ) ;
let num3 = 0 ;
if ( arg0 ) {
num3 = value . sectionData . layoutSize ;
}
obj . sectionOffset = num3 ;
return obj ;
}
}
}
}
} else {
2026-07-23 10:11:24 +00:00
let tmp6 = outer1_19 ;
if ( outer1_19 . SECTION === type ) {
2026-07-20 16:05:17 +00:00
if ( value . section <= arg1 ) {
if ( null == arg2 ) {
if ( value . section === arg1 ) {
obj = { } ;
( { layoutStart : obj2.scrollPosition , layoutSize : obj2.size } = value ) ;
obj . sectionOffset = 0 ;
return obj ;
}
}
}
}
}
let iter2 = tmp4 ( ) ;
iter = iter2 ;
let tmp7 = value ;
continue ;
}
if ( arg2 <= value . items ) {
obj = { scrollPosition : value.sectionData.layoutStart + value . sectionData . layoutSize + value . itemSize * arg2 , size : value.itemSize } ;
let num4 = 0 ;
if ( arg0 ) {
num4 = value . sectionData . layoutSize ;
}
obj . sectionOffset = num4 ;
return obj ;
}
}
let iter3 = tmp9 ( ) ;
iter4 = iter3 ;
}
}
}
}
}
} ;
items [ 13 ] = {
key : "getSectionItemFromPosition" ,
value ( arg0 ) {
let layoutSize ;
let sum ;
let value ;
let obj = arg1 ;
const self = this ;
if ( arg1 === undefined ) {
2026-07-23 10:11:24 +00:00
obj = outer1_18 ;
2026-07-20 16:05:17 +00:00
}
if ( self . dirty ) {
self . fullCompute ( ) ;
}
2026-07-23 10:11:24 +00:00
const tmp2 = outer1_32 ( self . items ) ;
2026-07-20 16:05:17 +00:00
const iter = tmp2 ( ) ;
let iter2 = iter ;
let num = 0 ;
let tmp3 ;
let num2 = 0 ;
if ( ! iter . done ) {
while ( true ) {
value = iter2 . value ;
sum = value . layoutStart + num ;
value = obj . get ( value . recyclerKey ) ;
layoutSize = value ;
if ( null == value ) {
layoutSize = value . layoutSize ;
}
if ( layoutSize > 0 ) {
if ( arg0 >= sum ) {
if ( arg0 <= sum + layoutSize ) {
break ;
}
}
}
let num3 = 0 ;
if ( null != value ) {
num3 = value - value . layoutSize ;
}
num = num + num3 ;
let iter3 = tmp2 ( ) ;
iter2 = iter3 ;
num2 = 0 ;
}
num2 = ( arg0 - sum ) / layoutSize ;
tmp3 = value ;
}
obj = { item : tmp3 , positionPercentage : num2 } ;
return obj ;
}
} ;
items [ 14 ] = {
key : "setDisableRecycling" ,
value ( disableRecycling ) {
this . disableRecycling = disableRecycling ;
}
} ;
items [ 15 ] = {
key : "getSize" ,
value() {
const self = this ;
if ( this . dirty ) {
self . fullCompute ( ) ;
}
return self . size ;
}
} ;
items [ 16 ] = {
key : "isDirty" ,
value() {
return this . dirty ;
}
} ;
return callback2 ( FastListComputer , items ) ;
2026-07-23 10:11:24 +00:00
} ) ( ) ;
let closure_21 = tmp6 ;
2026-07-20 16:05:17 +00:00
let closure_22 = { code : "function FastListTsx1(){const{scrollPosValue,interpolate,inputRange,outputRange,horizontal}=this.__closure;const interpolatedValue=scrollPosValue!=null?interpolate(scrollPosValue.get(),inputRange,outputRange):null;return{transform:interpolatedValue!=null?[horizontal?{translateX:interpolatedValue}:{translateY:interpolatedValue}]:undefined};}" } ;
let closure_23 = importAllResult . memo ( function FastListStickySectionRendererComponent ( children ) {
let debug ;
let fastListInstance ;
let horizontal ;
let layoutSize ;
let layoutStart ;
let nextSectionLayoutPosition ;
let recyclerKey ;
let scrollPosValue ;
let section ;
( { layoutStart , layoutSize , horizontal } = children ) ;
( { nextSectionLayoutPosition , scrollPosValue } = children ) ;
( { fastListInstance , section , debug , recyclerKey } = children ) ;
const items = [ - 1 , 0 ] ;
2026-07-23 10:11:24 +00:00
const items1 = [ 0 , 0 ] ;
2026-07-20 16:05:17 +00:00
items . push ( layoutStart ) ;
items1 . push ( 0 ) ;
let num = 0 ;
if ( null != nextSectionLayoutPosition ) {
num = nextSectionLayoutPosition ;
}
const diff = num - layoutSize ;
if ( diff >= layoutStart ) {
2026-07-23 10:11:24 +00:00
let obj = horizontal ( items [ 14 ] ) ;
2026-07-20 16:05:17 +00:00
let num4 = 0 ;
if ( obj . isAndroid ( ) ) {
num4 = - 1 ;
}
items . push ( diff , diff + 1 ) ;
items1 . push ( diff - layoutStart + num4 , diff - layoutStart + num4 ) ;
} else {
items . push ( layoutStart + 1 ) ;
items1 . push ( 1 ) ;
}
2026-07-23 10:11:24 +00:00
let obj1 = horizontal ( items [ 15 ] ) ;
2026-07-20 16:05:17 +00:00
const fn = function v() {
let interpolateResult = null ;
if ( null != scrollPosValue ) {
let obj = horizontal ( items [ 15 ] ) ;
interpolateResult = obj . interpolate ( scrollPosValue . get ( ) , items , items1 ) ;
}
obj = { } ;
if ( null == interpolateResult ) {
obj . transform = undefined ;
return obj ;
} else {
obj = { } ;
if ( horizontal ) {
obj . translateX = interpolateResult ;
let tmp8 = obj ;
} else {
obj . translateY = interpolateResult ;
tmp8 = obj ;
}
obj = [ tmp8 ] ;
}
} ;
2026-07-23 10:11:24 +00:00
obj = { scrollPosValue , interpolate : horizontal ( items [ 15 ] ) . interpolate , inputRange : items , outputRange : items1 , horizontal } ;
2026-07-20 16:05:17 +00:00
fn . __closure = obj ;
fn . __workletHash = 699810682881 ;
fn . __initData = closure_22 ;
const Children = importAllResult . Children ;
const animatedStyle = obj1 . useAnimatedStyle ( fn ) ;
const onlyResult = Children . only ( children . children ( section , fastListInstance , scrollPosValue , layoutStart ) ) ;
2026-07-23 10:11:24 +00:00
obj = { style : null , collapsable : false , preventClipping : true } ;
2026-07-20 16:05:17 +00:00
let style ;
if ( null != onlyResult ) {
if ( "props" in onlyResult ) {
style = onlyResult . props . style ;
}
}
const items2 = [ style , , ] ;
2026-07-23 10:11:24 +00:00
obj1 = { zIndex : 10 , position : "relative" } ;
2026-07-20 16:05:17 +00:00
let tmp15 ;
if ( ! horizontal ) {
tmp15 = layoutSize ;
}
obj1 . height = tmp15 ;
let tmp16 ;
if ( horizontal ) {
tmp16 = layoutSize ;
}
obj1 . width = tmp16 ;
items2 [ 1 ] = obj1 ;
items2 [ 2 ] = animatedStyle ;
obj . style = items2 ;
let cloneElementResult ;
if ( null != onlyResult ) {
const obj2 = { } ;
const obj3 = { flex : 1 } ;
obj2 . style = obj3 ;
cloneElementResult = importAllResult . cloneElement ( onlyResult , obj2 ) ;
}
const items3 = [ cloneElementResult , false ] ;
obj . children = items3 ;
2026-07-23 10:11:24 +00:00
return closure_15 ( scrollPosValue ( items [ 16 ] ) , obj ) ;
2026-07-20 16:05:17 +00:00
} ) ;
let closure_24 = importAllResult . memo ( function _FastListSectionRenderer ( disableWrapper ) {
let children ;
let fastListInstance ;
let horizontal ;
let layoutSize ;
let recyclerKey ;
let section ;
( { layoutSize , children , fastListInstance , section , recyclerKey , horizontal } = disableWrapper ) ;
if ( disableWrapper . disableWrapper ) {
if ( ! disableWrapper . debug ) {
let obj = { children : children ( section , fastListInstance ) } ;
return callback3 ( closure_17 , obj ) ;
}
}
2026-07-23 10:11:24 +00:00
obj = { collapsable : false , style : null , preventClipping : true } ;
2026-07-20 16:05:17 +00:00
obj = { } ;
if ( horizontal ) {
obj . width = layoutSize ;
let tmp5 = obj ;
} else {
obj . height = layoutSize ;
tmp5 = obj ;
}
obj . style = tmp5 ;
fastListInstance = children ( section , fastListInstance ) ;
section = [ fastListInstance , false ] ;
obj . children = section ;
2026-07-24 07:16:23 +00:00
closure_15 ( importDefault ( 5515 ) , obj ) ;
2026-07-20 16:05:17 +00:00
} ) ;
let closure_25 = importAllResult . memo ( function _FastListSectionFooterRenderer ( disableWrapper ) {
let children ;
let fastListInstance ;
let horizontal ;
let layoutSize ;
let recyclerKey ;
let section ;
( { layoutSize , fastListInstance , children , section , recyclerKey , horizontal } = disableWrapper ) ;
if ( disableWrapper . disableWrapper ) {
if ( ! disableWrapper . debug ) {
let obj = { children : children ( section , fastListInstance ) } ;
return callback3 ( closure_17 , obj ) ;
}
}
obj = { collapsable : false } ;
obj = { } ;
if ( horizontal ) {
obj . width = layoutSize ;
let tmp5 = obj ;
} else {
obj . height = layoutSize ;
tmp5 = obj ;
}
obj . style = tmp5 ;
children = children ( section , fastListInstance ) ;
section = [ children , false ] ;
obj . children = section ;
2026-07-24 07:16:23 +00:00
closure_15 ( importDefault ( 5515 ) , obj ) ;
2026-07-20 16:05:17 +00:00
} ) ;
let closure_26 = importAllResult . memo ( function _FastListItemRenderer ( disableWrapper ) {
let children ;
let fastListInstance ;
let horizontal ;
let item ;
let layoutSize ;
let recyclerKey ;
let section ;
( { layoutSize , children , section , fastListInstance , item , recyclerKey , horizontal } = disableWrapper ) ;
if ( disableWrapper . disableWrapper ) {
if ( ! disableWrapper . debug ) {
if ( null != children ) {
let childrenResult = children ( section , item , fastListInstance ) ;
}
}
return childrenResult ;
}
let obj = { collapsable : false } ;
obj = { } ;
if ( horizontal ) {
obj . width = layoutSize ;
let tmp5 = obj ;
} else {
obj . height = layoutSize ;
tmp5 = obj ;
}
obj . style = tmp5 ;
let childrenResult1 ;
if ( null != children ) {
childrenResult1 = children ( section , item , fastListInstance ) ;
}
const items = [ childrenResult1 , false ] ;
obj . children = items ;
2026-07-24 07:16:23 +00:00
childrenResult = closure_15 ( importDefault ( 5515 ) , obj ) ;
2026-07-20 16:05:17 +00:00
} ) ;
let closure_27 = importAllResult . memo ( function _FastListHeaderFooterRenderer ( disableWrapper ) {
let children ;
let fastListInstance ;
let horizontal ;
let layoutSize ;
let recyclerKey ;
( { layoutSize , children , fastListInstance , recyclerKey , horizontal } = disableWrapper ) ;
if ( disableWrapper . disableWrapper ) {
if ( ! disableWrapper . debug ) {
let obj = { children : children ( fastListInstance ) } ;
return callback3 ( closure_17 , obj ) ;
}
}
2026-07-23 10:11:24 +00:00
obj = { collapsable : false , style : null , preventClipping : true } ;
2026-07-20 16:05:17 +00:00
obj = { } ;
if ( horizontal ) {
obj . width = layoutSize ;
let tmp5 = obj ;
} else {
obj . height = layoutSize ;
tmp5 = obj ;
}
obj . style = tmp5 ;
children = children ( fastListInstance ) ;
fastListInstance = [ children , false ] ;
obj . children = fastListInstance ;
2026-07-24 07:16:23 +00:00
closure_15 ( importDefault ( 5515 ) , obj ) ;
2026-07-20 16:05:17 +00:00
} ) ;
let closure_28 = importAllResult . memo ( function _FastListSpacer ( layoutSize ) {
layoutSize = layoutSize . layoutSize ;
let obj = { collapsable : false } ;
obj = { } ;
if ( layoutSize . horizontal ) {
obj . width = layoutSize ;
let tmp3 = obj ;
} else {
obj . height = layoutSize ;
tmp3 = obj ;
}
obj . style = tmp3 ;
2026-07-24 07:16:23 +00:00
return closure_16 ( importDefault ( 5515 ) , obj ) ;
2026-07-20 16:05:17 +00:00
} ) ;
2026-07-23 10:11:24 +00:00
let closure_29 = ( ( ) = > {
2026-07-20 16:05:17 +00:00
class FastListScrollAnchor {
constructor ( arg0 ) {
2026-07-23 10:11:24 +00:00
tmp = outer1_9 ( this , FastListScrollAnchor ) ;
2026-07-20 16:05:17 +00:00
this . getScrollPosition = arg0 ;
this . isCustomAnchor = false ;
return ;
}
}
let obj = {
key : "hasAnchor" ,
value() {
return null != this . anchorId ;
}
} ;
const items = [ obj , , , , , ] ;
obj = {
key : "cleanAnchor" ,
value() {
let flag = arg0 ;
const self = this ;
if ( arg0 === undefined ) {
flag = false ;
}
if ( ! tmp ) {
self . isCustomAnchor = false ;
self . anchorId = undefined ;
self . anchorOffset = undefined ;
}
}
} ;
items [ 1 ] = obj ;
obj = {
key : "handleUserScroll" ,
value() {
this . cleanAnchor ( true ) ;
}
} ;
items [ 2 ] = obj ;
items [ 3 ] = {
key : "setCustomAnchor" ,
value ( arg0 , anchorOffset ) {
const self = this ;
this . isCustomAnchor = true ;
this . anchorOffset = anchorOffset ;
this . anchorId = arg0 ( arg2 , arg3 ) ;
if ( null == this . anchorId ) {
self . cleanAnchor ( true ) ;
}
}
} ;
items [ 4 ] = {
key : "findOrUpdateAnchor" ,
value ( arg0 , arg1 ) {
let value ;
const self = this ;
const scrollPosition = this . getScrollPosition ( ) ;
this . cleanAnchor ( ) ;
2026-07-23 10:11:24 +00:00
const tmp3 = outer1_32 ( arg1 ) ;
2026-07-20 16:05:17 +00:00
const iter = tmp3 ( ) ;
let iter2 = iter ;
if ( ! iter . done ) {
while ( true ) {
value = iter2 . value ;
2026-07-23 10:11:24 +00:00
let tmp5 = outer1_19 ;
2026-07-20 16:05:17 +00:00
let tmp6 = tmp4 ;
2026-07-23 10:11:24 +00:00
if ( value . type === outer1_19 . ITEM ) {
2026-07-20 16:05:17 +00:00
if ( self . isCustomAnchor ) {
let item = value . item ;
let num = 0 ;
if ( null != item ) {
num = item ;
}
2026-07-23 10:11:24 +00:00
tmp4 = item ;
2026-07-20 16:05:17 +00:00
if ( self . anchorId === arg0 ( value . section , num ) ) {
break ;
}
}
tmp6 = tmp4 ;
if ( ! self . isCustomAnchor ) {
tmp6 = tmp4 ;
if ( value . layoutStart >= scrollPosition ) {
self . anchorOffset = value . layoutStart - scrollPosition ;
let item2 = value . item ;
let num2 = 0 ;
if ( null != item2 ) {
num2 = item2 ;
}
self . anchorId = arg0 ( value . section , num2 ) ;
}
}
}
let iter3 = tmp3 ( ) ;
tmp4 = tmp6 ;
iter2 = iter3 ;
}
self . anchorOffset = value . layoutStart - scrollPosition ;
}
}
} ;
items [ 5 ] = {
key : "getAnchorIndex" ,
value ( arg0 ) {
const self = this ;
if ( null != this . anchorId ) {
self . cleanAnchor ( ) ;
return arg0 ( self . anchorId ) ;
}
}
} ;
return callback2 ( FastListScrollAnchor , items ) ;
2026-07-23 10:11:24 +00:00
} ) ( ) ;
2026-07-20 16:05:17 +00:00
let closure_30 = { code : "function FastListTsx2(event){const{horizontal,workletMounted,scrollPosValue,onScrollWorklet}=this.__closure;const scrollPosition=!horizontal?event.contentOffset.y:event.contentOffset.x;const contentSize=!horizontal?event.contentSize.height:event.contentSize.width;if(contentSize===0&&!workletMounted.get())return;workletMounted.set(true);scrollPosValue.set(Math.min(scrollPosition,contentSize));if(onScrollWorklet!=null){const layoutSize=!horizontal?event.layoutMeasurement.height:event.layoutMeasurement.width;onScrollWorklet(scrollPosition,contentSize,layoutSize);}}" } ;
2026-07-23 10:11:24 +00:00
let tmp7 = ( ( PureComponent ) = > {
2026-07-20 16:05:17 +00:00
class FastList {
constructor ( arg0 ) {
self = this ;
2026-07-23 10:11:24 +00:00
tmp = outer1_9 ( this , apply ) ;
2026-07-20 16:05:17 +00:00
items = [ ] ;
items [ 0 ] = PureComponent ;
2026-07-23 10:11:24 +00:00
obj = outer1_6 ( apply ) ;
tmp2 = outer1_5 ;
if ( outer1_31 ( ) ) {
2026-07-20 16:05:17 +00:00
tmp4 = globalThis ;
_Reflect = Reflect ;
2026-07-23 10:11:24 +00:00
tmp5 = outer1_6 ;
constructResult = Reflect . construct ( obj , items , outer1_6 ( self ) . constructor ) ;
2026-07-20 16:05:17 +00:00
} else {
constructResult = obj . apply ( self , items ) ;
}
tmp2Result = tmp2 ( self , constructResult ) ;
2026-07-23 10:11:24 +00:00
apply = tmp2Result ;
2026-07-20 16:05:17 +00:00
tmp2Result . containerSize = 0 ;
tmp2Result . scrollPos = 0 ;
2026-07-23 10:11:24 +00:00
obj3 = FastList ( outer1_2 [ 17 ] ) ;
2026-07-20 16:05:17 +00:00
tmp2Result . scrollPosValue = obj3 . createFakeSharedValue ( 0 ) ;
manualRef = tmp2Result . props . manualRef ;
if ( null == manualRef ) {
2026-07-23 10:11:24 +00:00
tmp6 = outer1_11 ;
manualRef = outer1_11 . createRef ( ) ;
2026-07-20 16:05:17 +00:00
}
tmp2Result . scrollView = manualRef ;
tmp2Result . getItems = ( ) = > tmp2Result . state . items ;
tmp2Result . getScrollPosition = ( ) = > tmp2Result . scrollPos ;
tmp2Result . disableAnchoringTimeout = undefined ;
tmp2Result . viewTag = null ;
2026-07-23 10:11:24 +00:00
obj4 = FastList ( outer1_2 [ 15 ] ) ;
2026-07-20 16:05:17 +00:00
tmp2Result . workletMounted = obj4 . makeMutable ( false ) ;
tmp2Result . deferredCompute = - 1 ;
tmp2Result . deferNextCompute = false ;
2026-07-23 10:11:24 +00:00
tmp7 = new outer1_29 ( tmp2Result . getScrollPosition ) ;
2026-07-20 16:05:17 +00:00
tmp2Result . scrollAnchor = tmp7 ;
tmp2Result . viewabilityDebounce = - 1 ;
tmp2Result . previouslyViewableItems = [ ] ;
tmp2Result . _scrollPositionToPoint = ( arg0 ) = > {
const horizontal = tmp2Result . props . horizontal ;
const obj = { } ;
let num = 0 ;
if ( horizontal ) {
num = arg0 ;
}
obj . x = num ;
let num2 = 0 ;
if ( ! horizontal ) {
num2 = arg0 ;
}
obj . y = num2 ;
return obj ;
} ;
tmp2Result . _calculateScrollPosition = ( paddingStart ) = > {
let itemCoords ;
let orientation ;
let scrollPosition ;
let sectionOffset ;
let size ;
( { itemCoords , orientation } = paddingStart ) ;
if ( orientation === undefined ) {
orientation = "top" ;
}
let num = paddingStart . paddingStart ;
if ( num === undefined ) {
num = 0 ;
}
let num2 = paddingStart . paddingEnd ;
if ( num2 === undefined ) {
num2 = 0 ;
}
( { scrollPosition , size , sectionOffset } = itemCoords ) ;
if ( tmp2Result . containerSize > 0 ) {
let num3 = tmp2Result . containerSize ;
} else {
const chunkBase = tmp2Result . props . chunkBase ;
num3 = 0 ;
if ( null != chunkBase ) {
num3 = chunkBase ;
}
}
if ( size >= num3 ) {
orientation = "top" ;
}
if ( "visible" === orientation ) {
if ( scrollPosition + sectionOffset >= tmp2Result . scrollPos + num ) {
if ( scrollPosition + size <= tmp2Result . scrollPos + ( num3 - num2 ) ) {
return null ;
}
}
if ( size <= num3 ) {
if ( scrollPosition >= tmp2Result . scrollPos ) {
let diff = scrollPosition + size + num2 - num3 ;
}
}
diff = scrollPosition - ( sectionOffset + num ) ;
} else if ( "top" === orientation ) {
diff = scrollPosition - ( sectionOffset + num ) ;
} else {
diff = scrollPosition ;
if ( "center" === orientation ) {
const _Math = Math ;
const _Math2 = Math ;
const sum = itemCoords . scrollPosition + Math . floor ( itemCoords . size / 2 ) ;
diff = sum - Math . floor ( num3 / 2 ) ;
}
}
return Math . max ( 0 , Math . min ( diff , paddingStart . fullSize - num3 ) ) ;
} ;
props = tmp2Result . props ;
chunkBase = props . chunkBase ;
obj = { headerSize : props.headerSize , footerSize : props.footerSize , sectionSize : props.sectionSize , itemSize : props.itemSize , sectionFooterSize : props.sectionFooterSize , sections : props.sections , insetStart : props.insetStart , insetEnd : props.insetEnd , stickyHeaderFooter : props.stickyHeaderFooter , getRecyclerKey : props.getRecyclerKey , persistantKeys : props.persistantKeys , disableRecyclingOnFullCompute : props.disableRecyclingOnFullCompute } ;
2026-07-23 10:11:24 +00:00
tmp8 = new outer1_21 ( obj ) ;
2026-07-20 16:05:17 +00:00
num = 0 ;
if ( null != chunkBase ) {
num = chunkBase ;
}
tmp2Result . state = tmp2Result . getInitialState ( num , tmp8 , true ) ;
tmp2Result . handleViewabilityChange = ( ) = > {
const onViewableItemsChanged = tmp2Result . props . onViewableItemsChanged ;
if ( null != onViewableItemsChanged ) {
const sum = tmp2Result . scrollPos + tmp2Result . containerSize ;
const items = [ ] ;
2026-07-23 10:11:24 +00:00
const tmp14 = outer2_32 ( tmp2Result . state . items ) ;
2026-07-20 16:05:17 +00:00
let iter2 = tmp14 ( ) ;
if ( ! iter2 . done ) {
const value = iter2 . value ;
while ( value . layoutStart <= sum ) {
let _Math = Math ;
let bound = Math . max ( value . layoutStart , tmp11 ) ;
let _Math2 = Math ;
let bound1 = Math . min ( value . layoutStart + value . layoutSize , sum ) ;
if ( bound < bound1 ) {
if ( ( bound1 - bound ) / value . layoutSize >= tmp10 ) {
let arr = items . push ( value . recyclerKey ) ;
}
}
let iter = tmp14 ( ) ;
iter2 = iter ;
if ( iter . done ) {
break ;
}
}
}
if ( ! obj . areArraysShallowEqual ( items , tmp2Result . previouslyViewableItems ) ) {
tmp2Result . previouslyViewableItems = items ;
const result = onViewableItemsChanged ( items ) ;
}
2026-07-23 10:11:24 +00:00
obj = FastList ( outer2_2 [ 11 ] ) ;
2026-07-20 16:05:17 +00:00
}
} ;
tmp2Result . isVisible = ( arg0 ) = > {
let num = arg1 ;
let num2 = arg2 ;
if ( arg1 === undefined ) {
num = 0 ;
}
if ( num2 === undefined ) {
num2 = 0 ;
}
let tmp = arg0 >= tmp2Result . scrollPos + num ;
if ( tmp ) {
tmp = arg0 <= tmp2Result . scrollPos + tmp2Result . containerSize - num2 ;
}
return tmp ;
} ;
tmp2Result . scrollToTop = ( ) = > {
let flag = arg0 ;
if ( arg0 === undefined ) {
flag = true ;
}
const scrollView = tmp2Result . scrollView ;
let tmp = null == scrollView ;
let obj = scrollView ;
if ( ! tmp ) {
const current = scrollView . current ;
tmp = null == current ;
obj = current ;
}
if ( ! tmp ) {
2026-07-23 10:11:24 +00:00
obj = { x : 0 , y : 0 , animated : flag } ;
2026-07-20 16:05:17 +00:00
obj . scrollTo ( obj ) ;
}
} ;
tmp2Result . scrollToLocation = ( orientation ) = > {
let animated ;
let getAnchorIdFromIndex ;
let item ;
let section ;
let stickySectionsVariant ;
( { section , item , animated } = orientation ) ;
if ( animated === undefined ) {
animated = false ;
}
let str = orientation . orientation ;
if ( str === undefined ) {
str = "top" ;
}
let num = orientation . paddingStart ;
if ( num === undefined ) {
num = 0 ;
}
let num2 = orientation . paddingEnd ;
if ( num2 === undefined ) {
num2 = 0 ;
}
let flag = orientation . setAnchor ;
if ( flag === undefined ) {
flag = false ;
}
const current = tmp2Result . scrollView . current ;
if ( null == current ) {
return false ;
} else {
( { getAnchorIdFromIndex , stickySectionsVariant } = tmp2Result . props ) ;
let str2 = "default" ;
if ( undefined !== stickySectionsVariant ) {
str2 = stickySectionsVariant ;
}
const fastListComputer = tmp2Result . state . fastListComputer ;
const scrollPosition = fastListComputer . computeScrollPosition ( "default" === str2 , section , item ) ;
if ( null == scrollPosition ) {
return false ;
} else {
if ( "visible" === str ) {
if ( tmp2Result . isVisible ( scrollPosition . scrollPosition , num , num2 ) ) {
return false ;
}
}
let obj = { itemCoords : scrollPosition , fullSize : fastListComputer.getSize ( ) , orientation : str , paddingStart : num , paddingEnd : num2 } ;
const result = tmp2Result . _calculateScrollPosition ( obj ) ;
if ( tmp5 ) {
const scrollAnchor = tmp2Result . scrollAnchor ;
let num3 = 0 ;
if ( null != result ) {
num3 = result ;
}
scrollAnchor . setCustomAnchor ( getAnchorIdFromIndex , scrollPosition . scrollPosition - num3 , section , item ) ;
}
let flag2 = null != result ;
if ( flag2 ) {
flag2 = result !== tmp2Result . scrollPos ;
}
if ( flag2 ) {
if ( ! animated ) {
tmp2Result . scrollPos = result ;
const blocks = tmp2Result . computeBlocks ( ) ;
}
obj = { } ;
const merged = Object . assign ( tmp2Result . _scrollPositionToPoint ( result ) ) ;
obj [ "animated" ] = animated ;
current . scrollTo ( obj ) ;
flag2 = true ;
}
return flag2 ;
}
const tmp19 = tmp2Result ;
}
} ;
tmp2Result . scrollTo = ( arg0 ) = > {
let flag = arg1 ;
if ( arg1 === undefined ) {
flag = false ;
}
const current = tmp2Result . scrollView . current ;
const fastListComputer = tmp2Result . state . fastListComputer ;
let tmp = null != current ;
if ( tmp ) {
let flag2 = arg0 <= fastListComputer . getSize ( ) - tmp2Result . containerSize ;
if ( flag2 ) {
flag2 = arg0 !== tmp2Result . scrollPos ;
}
if ( flag2 ) {
const obj = { } ;
const merged = Object . assign ( tmp2Result . _scrollPositionToPoint ( arg0 ) ) ;
obj [ "animated" ] = flag ;
current . scrollTo ( obj ) ;
flag2 = true ;
}
tmp = flag2 ;
}
return tmp ;
} ;
tmp2Result . handleScroll = ( nativeEvent ) = > {
let EXPERIMENTAL_enableAnchorWhileScrolling ;
let contentInset ;
let endReachedThreshold ;
let fastListComputer ;
let hasReachedEndBefore ;
let horizontal ;
let onEndReached ;
let onScroll ;
( { contentInset , horizontal , onScroll , onEndReached , endReachedThreshold , EXPERIMENTAL_enableAnchorWhileScrolling } = tmp2Result . props ) ;
let tmp2 = undefined !== EXPERIMENTAL_enableAnchorWhileScrolling ;
if ( tmp2 ) {
tmp2 = EXPERIMENTAL_enableAnchorWhileScrolling ;
}
( { fastListComputer , hasReachedEndBefore } = tmp2Result . state ) ;
const layoutMeasurement = nativeEvent . nativeEvent . layoutMeasurement ;
const tmp3 = horizontal ? layoutMeasurement.width : layoutMeasurement.height ;
const tmp4 = horizontal ? contentInset.left : contentInset.top ;
let num = 0 ;
if ( null != tmp4 ) {
num = tmp4 ;
}
const tmp5 = horizontal ? contentInset.right : contentInset.bottom ;
let num2 = 0 ;
if ( null != tmp5 ) {
num2 = tmp5 ;
}
tmp2Result . containerSize = tmp3 - num - num2 ;
const bound = Math . max ( 0 , tmp2Result . getScrollPositionFromEvent ( nativeEvent ) ) ;
const bound1 = Math . min ( bound , fastListComputer . getSize ( ) - tmp2Result . containerSize ) ;
tmp2Result . scrollPos = bound1 ;
if ( null != onScroll ) {
onScroll ( nativeEvent ) ;
}
let obj = tmp2Result ;
if ( tmp2Result . deferNextCompute ) {
obj . deferNextCompute = false ;
if ( - 1 !== obj . deferredCompute ) {
const _cancelAnimationFrame = cancelAnimationFrame ;
cancelAnimationFrame ( tmp2Result . deferredCompute ) ;
}
const _requestAnimationFrame = requestAnimationFrame ;
2026-07-23 10:11:24 +00:00
tmp2Result . deferredCompute = requestAnimationFrame ( ( ) = > outer1_0 . computeBlocks ( ) ) ;
2026-07-20 16:05:17 +00:00
} else {
const blocks = obj . computeBlocks ( ) ;
}
if ( ! tmp2 ) {
const _clearTimeout = clearTimeout ;
clearTimeout ( tmp2Result . disableAnchoringTimeout ) ;
const _setTimeout = setTimeout ;
tmp2Result . disableAnchoringTimeout = setTimeout ( ( ) = > {
2026-07-23 10:11:24 +00:00
clearTimeout ( outer1_0 . disableAnchoringTimeout ) ;
outer1_0 . disableAnchoringTimeout = undefined ;
2026-07-20 16:05:17 +00:00
} , 100 ) ;
}
if ( null != onEndReached ) {
const contentSize = nativeEvent . nativeEvent . contentSize ;
let num5 = 0 ;
if ( null != endReachedThreshold ) {
num5 = endReachedThreshold ;
}
2026-07-23 10:11:24 +00:00
const rounded = Math . ceil ( ( horizontal ? contentSize.width : contentSize.height ) - num5 - tmp3 ) ;
2026-07-20 16:05:17 +00:00
const _Math = Math ;
const rounded1 = Math . ceil ( bound1 ) ;
if ( rounded1 >= rounded ) {
if ( ! hasReachedEndBefore ) {
obj = { hasReachedEndBefore : true } ;
tmp2Result . setState ( obj ) ;
obj = { distanceFromEnd : rounded1 - rounded } ;
onEndReached ( obj ) ;
}
}
let tmp22 = ! tmp18 ;
if ( rounded1 < rounded ) {
tmp22 = hasReachedEndBefore ;
}
if ( tmp22 ) {
const obj1 = { hasReachedEndBefore : false } ;
tmp2Result . setState ( obj1 ) ;
}
const tmp15 = horizontal ? contentSize.width : contentSize.height ;
}
const result = tmp2Result . queueViewabilityChange ( ) ;
} ;
tmp2Result . handleLayout = ( nativeEvent ) = > {
let chunkBase ;
let contentInset ;
let horizontal ;
let onLayout ;
const state = tmp2Result . state ;
const fastListComputer = state . fastListComputer ;
( { contentInset , onLayout , horizontal , chunkBase } = tmp2Result . props ) ;
const layout = nativeEvent . nativeEvent . layout ;
const tmp2 = horizontal ? contentInset.left : contentInset.top ;
let num = 0 ;
if ( null != tmp2 ) {
num = tmp2 ;
}
const tmp3 = horizontal ? contentInset.right : contentInset.bottom ;
let num2 = 0 ;
if ( null != tmp3 ) {
num2 = tmp3 ;
}
2026-07-23 10:11:24 +00:00
tmp2Result . containerSize = ( horizontal ? layout.width : layout.height ) - num - num2 ;
2026-07-20 16:05:17 +00:00
if ( null == chunkBase ) {
fastListComputer . setInfo ( tmp2Result . containerSize ) ;
}
if ( null != onLayout ) {
onLayout ( nativeEvent , tmp2Result ) ;
}
if ( state . isFirstLayout ) {
if ( null == chunkBase ) {
tmp2Result . setState ( tmp2Result . getInitialState ( tmp2Result . containerSize , fastListComputer , false ) ) ;
}
const result = tmp2Result . queueViewabilityChange ( ) ;
}
const blocks = tmp2Result . computeBlocks ( ) ;
} ;
tmp2Result . handleMomentumScrollEnd = ( result ) = > {
const onScrollEnd = tmp2Result . props . onScrollEnd ;
if ( null != onScrollEnd ) {
onScrollEnd ( result ) ;
}
} ;
tmp2Result . handleScrollBeginDrag = ( arg0 ) = > {
const scrollAnchor = tmp2Result . scrollAnchor ;
scrollAnchor . handleUserScroll ( ) ;
if ( null != tmp2Result . props . onScrollBeginDrag ) {
const props = tmp2Result . props ;
props . onScrollBeginDrag ( arg0 ) ;
}
} ;
props2 = tmp2Result . props ;
( { getAnchorIdFromIndex , getAnchorIndexFromId } = props2 ) ;
if ( props2 . batchesToRender < 5 ) {
tmp25 = globalThis ;
_Error4 = Error ;
prototype4 = Error . prototype ;
tmp26 = new . target ;
str4 = "FastList: `batchesToRender` must be >= 6" ;
tmp27 = new . target ;
error = new Error ( "FastList: `batchesToRender` must be >= 6" ) ;
tmp29 = error ;
throw error ;
} else {
if ( null != getAnchorIdFromIndex ) {
if ( null != getAnchorIdFromIndex ) {
}
tmp9 = globalThis ;
_Error = Error ;
prototype = Error . prototype ;
tmp10 = new . target ;
str = "FastList: You must define BOTH `getAnchorIndexFromId` and `getAnchorIdFromIndex`, or neither" ;
tmp11 = new . target ;
error1 = new Error ( "FastList: You must define BOTH `getAnchorIndexFromId` and `getAnchorIdFromIndex`, or neither" ) ;
tmp13 = error1 ;
throw error1 ;
}
viewabilityConfig = tmp2Result . getViewabilityConfig ( ) ;
if ( viewabilityConfig . minimumViewTime <= 0 ) {
tmp20 = globalThis ;
_Error3 = Error ;
prototype3 = Error . prototype ;
tmp21 = new . target ;
str3 = "FastList: `viewabilityConfig.minimumViewTime` must be greater than 0" ;
tmp22 = new . target ;
error2 = new Error ( "FastList: `viewabilityConfig.minimumViewTime` must be greater than 0" ) ;
tmp24 = error2 ;
throw error2 ;
} else {
if ( viewabilityConfig . visibilityThreshold > 0 ) {
num2 = 1 ;
if ( viewabilityConfig . visibilityThreshold <= 1 ) {
return tmp2Result ;
}
}
tmp15 = globalThis ;
_Error2 = Error ;
prototype2 = Error . prototype ;
tmp16 = new . target ;
str2 = "FastList: `viewabilityConfig.visibilityThreshold` must be floating point value greater than 0 and less than 1" ;
tmp17 = new . target ;
error3 = new Error ( "FastList: `viewabilityConfig.visibilityThreshold` must be floating point value greater than 0 and less than 1" ) ;
tmp19 = error3 ;
throw error3 ;
}
}
}
}
callback ( FastList , PureComponent ) ;
let obj = {
key : "computeScrollPosition" ,
value ( arg0 , arg1 ) {
const fastListComputer = this . state . fastListComputer ;
return fastListComputer . computeScrollPosition ( false , arg0 , arg1 ) ;
}
} ;
2026-07-23 10:11:24 +00:00
let items = [ obj , , , , , , , , , , , , , , , , , ] ;
2026-07-20 16:05:17 +00:00
obj = {
key : "getInitialState" ,
value ( arg0 , setInfo ) {
let batchSize ;
let blockEnd ;
let blockStart ;
let initialScrollItem ;
let initialScrollOrientation ;
let initialScrollStart ;
let stickySectionsVariant ;
let items = arg3 ;
const self = this ;
if ( arg3 === undefined ) {
items = [ ] ;
}
const props = self . props ;
const initialScrollSection = props . initialScrollSection ;
let num = 0 ;
if ( undefined !== initialScrollSection ) {
num = initialScrollSection ;
}
( { initialScrollItem , initialScrollOrientation } = props ) ;
let str = "visible" ;
if ( undefined !== initialScrollOrientation ) {
str = initialScrollOrientation ;
}
( { initialScrollStart , stickySectionsVariant } = props ) ;
let str2 = "default" ;
if ( undefined !== stickySectionsVariant ) {
str2 = stickySectionsVariant ;
}
const horizontal = props . horizontal ;
const scrollPosValue = props . scrollPosValue ;
setInfo . setInfo ( arg0 ) ;
let num2 = 0 ;
if ( null != initialScrollStart ) {
num2 = initialScrollStart ;
}
if ( null != initialScrollStart ) {
let point = self . _scrollPositionToPoint ( initialScrollStart ) ;
let tmp3 = num2 ;
} else if ( num > 0 ) {
tmp3 = num2 ;
if ( arg0 > 0 ) {
const scrollPosition = setInfo . computeScrollPosition ( "default" === str2 , num , initialScrollItem ) ;
tmp3 = num2 ;
if ( null != scrollPosition ) {
let obj = { itemCoords : scrollPosition , fullSize : setInfo.getSize ( ) , orientation : str , paddingEnd : 16 } ;
const result = self . _calculateScrollPosition ( obj ) ;
let diff = result ;
if ( null == result ) {
diff = scrollPosition . scrollPosition - scrollPosition . sectionOffset ;
}
tmp3 = diff ;
if ( null != result ) {
point = self . _scrollPositionToPoint ( result ) ;
tmp3 = diff ;
}
}
}
} else {
tmp3 = num2 ;
}
if ( arg2 ) {
if ( arg0 > 0 ) {
2026-07-23 10:11:24 +00:00
( { batchSize , blockStart , blockEnd } = outer1_37 ( arg0 , tmp3 , props . batchesToRender ) ) ;
const tmp8 = outer1_37 ( arg0 , tmp3 , props . batchesToRender ) ;
2026-07-20 16:05:17 +00:00
}
if ( null == point ) {
2026-07-23 10:11:24 +00:00
point = { x : 0 , y : 0 } ;
2026-07-20 16:05:17 +00:00
}
const tmp9 = tmp ? point.x : point.y ;
self . scrollPos = tmp9 ;
if ( null != scrollPosValue ) {
const result1 = scrollPosValue . set ( tmp9 ) ;
self . scrollPosValue = scrollPosValue ;
} else {
2026-07-23 10:11:24 +00:00
self . scrollPosValue = FastList ( outer1_2 [ 15 ] ) . makeMutable ( tmp9 ) ;
const obj2 = FastList ( outer1_2 [ 15 ] ) ;
2026-07-20 16:05:17 +00:00
}
obj = { } ;
if ( arg0 > 0 ) {
let computeResult = setInfo . compute ( blockStart , blockEnd , items , true ) ;
} else {
computeResult = { size : 0 , items : [ ] } ;
}
const merged = Object . assign ( computeResult ) ;
obj [ "batchSize" ] = batchSize ;
obj [ "blockStart" ] = blockStart ;
obj [ "blockEnd" ] = blockEnd ;
obj [ "isFirstLayout" ] = arg2 ;
obj [ "fastListComputer" ] = setInfo ;
obj [ "initialContentOffset" ] = point ;
obj [ "hasReachedEndBefore" ] = false ;
return obj ;
}
2026-07-23 10:11:24 +00:00
batchSize = outer1_36 ( arg0 ) ;
2026-07-20 16:05:17 +00:00
blockEnd = tmp3 + arg0 ;
blockStart = tmp3 ;
}
} ;
items [ 1 ] = obj ;
obj = {
key : "componentDidMount" ,
value() {
const self = this ;
const scrollPosValue = this . scrollPosValue ;
const workletMounted = this . workletMounted ;
const props = this . props ;
const horizontal = props . horizontal ;
2026-07-23 10:11:24 +00:00
let closure_2 = tmp ;
2026-07-20 16:05:17 +00:00
const onScrollWorklet = props . onScrollWorklet ;
const fn = function t ( contentOffset ) {
contentOffset = contentOffset . contentOffset ;
2026-07-23 10:11:24 +00:00
const tmp = closure_2 ? contentOffset.x : contentOffset.y ;
2026-07-20 16:05:17 +00:00
const contentSize = contentOffset . contentSize ;
2026-07-23 10:11:24 +00:00
const tmp2 = closure_2 ? contentSize.width : contentSize.height ;
2026-07-20 16:05:17 +00:00
if ( 0 !== tmp2 ) {
const result = workletMounted . set ( true ) ;
const _Math = Math ;
const result1 = scrollPosValue . set ( Math . min ( tmp , tmp2 ) ) ;
if ( null != onScrollWorklet ) {
let layoutMeasurement = contentOffset . layoutMeasurement ;
layoutMeasurement = onScrollWorklet ;
2026-07-23 10:11:24 +00:00
onScrollWorklet ( tmp , tmp2 , closure_2 ? layoutMeasurement.width : layoutMeasurement.height ) ;
const tmp12 = closure_2 ? layoutMeasurement.width : layoutMeasurement.height ;
2026-07-20 16:05:17 +00:00
}
}
} ;
2026-07-23 10:11:24 +00:00
fn . __closure = { horizontal : undefined !== horizontal && horizontal , workletMounted , scrollPosValue , onScrollWorklet } ;
2026-07-20 16:05:17 +00:00
fn . __workletHash = 16225357996403 ;
2026-07-23 10:11:24 +00:00
fn . __initData = outer1_30 ;
self . worklet = new FastList ( outer1_2 [ 15 ] ) . WorkletEventHandler ( fn , [ "onScroll" ] ) ;
self . viewTag = outer1_14 ( self . scrollView . current ) ;
2026-07-20 16:05:17 +00:00
const worklet = self . worklet ;
worklet . registerForEvents ( self . viewTag ) ;
2026-07-23 10:11:24 +00:00
let result = self . queueViewabilityChange ( ) ;
2026-07-20 16:05:17 +00:00
}
} ;
items [ 2 ] = obj ;
items [ 3 ] = {
key : "getSnapshotBeforeUpdate" ,
value ( getAnchorIdFromIndex , isFirstLayout ) {
const self = this ;
getAnchorIdFromIndex = getAnchorIdFromIndex . getAnchorIdFromIndex ;
const EXPERIMENTAL_enableAnchorWhileScrolling = this . props . EXPERIMENTAL_enableAnchorWhileScrolling ;
isFirstLayout = self . state . isFirstLayout ;
if ( tmp ) {
if ( ! tmp4 ) {
const scrollAnchor = self . scrollAnchor ;
scrollAnchor . findOrUpdateAnchor ( getAnchorIdFromIndex , isFirstLayout . items ) ;
}
const scrollAnchor2 = self . scrollAnchor ;
let tmp2 = scrollAnchor2 . hasAnchor ( ) || null ;
2026-07-23 10:11:24 +00:00
tmp4 = null == getAnchorIdFromIndex || isFirstLayout || isFirstLayout !== isFirstLayout . isFirstLayout ;
2026-07-20 16:05:17 +00:00
const tmp6 = scrollAnchor2 . hasAnchor ( ) || null ;
} else {
tmp2 = null ;
}
return tmp2 ;
}
} ;
items [ 4 ] = {
key : "componentDidUpdate" ,
value ( scrollPosValue , isFirstLayout ) {
2026-07-23 10:11:24 +00:00
let self = this ;
self = this ;
2026-07-20 16:05:17 +00:00
if ( scrollPosValue . scrollPosValue !== this . props . scrollPosValue ) {
const _Error = Error ;
const error = new Error ( "FastList: scrollPosValue cannot changed after mounting" ) ;
throw error ;
} else {
if ( ! self . state . isFirstLayout ) {
if ( isFirstLayout . isFirstLayout ) {
if ( null == self . props . chunkBase ) {
const current = self . scrollView . current ;
if ( null != current ) {
current . measure ( ( ) = > self . restoreScrollPosition ( ) ) ;
}
}
}
if ( self . state . items !== isFirstLayout . items ) {
const result = self . queueViewabilityChange ( ) ;
}
}
if ( arg2 ) {
self . anchorScroll ( ) ;
}
}
}
} ;
items [ 5 ] = {
key : "getViewabilityConfig" ,
value() {
const viewabilityConfig = this . props . viewabilityConfig ;
const obj = { } ;
let minimumViewTime ;
if ( null != viewabilityConfig ) {
minimumViewTime = viewabilityConfig . minimumViewTime ;
}
let num = 1000 ;
if ( null != minimumViewTime ) {
num = minimumViewTime ;
}
obj . minimumViewTime = num ;
let visibilityThreshold ;
if ( null != viewabilityConfig ) {
visibilityThreshold = viewabilityConfig . visibilityThreshold ;
}
let num2 = 0.5 ;
if ( null != visibilityThreshold ) {
num2 = visibilityThreshold ;
}
obj . visibilityThreshold = num2 ;
return obj ;
}
} ;
items [ 6 ] = {
key : "queueViewabilityChange" ,
value() {
const self = this ;
if ( null != this . props . onViewableItemsChanged ) {
const _clearTimeout = clearTimeout ;
clearTimeout ( self . viewabilityDebounce ) ;
const _setTimeout = setTimeout ;
self . viewabilityDebounce = setTimeout ( self . handleViewabilityChange , self . getViewabilityConfig ( ) . minimumViewTime ) ;
}
}
} ;
items [ 7 ] = {
key : "reset" ,
value() {
let fastListComputer ;
let getInitialState ;
let items ;
let setState ;
const self = this ;
const chunkBase = this . props . chunkBase ;
const state = this . state ;
( { fastListComputer , items } = state ) ;
if ( ! state . isFirstLayout ) {
let num = 0 ;
( { setState , getInitialState } = self ) ;
if ( null != chunkBase ) {
num = chunkBase ;
}
setState ( getInitialState ( num , fastListComputer , false , items ) ) ;
}
}
} ;
items [ 8 ] = {
key : "componentWillUnmount" ,
value() {
const self = this ;
const worklet = this . worklet ;
if ( null != worklet ) {
worklet . unregisterFromEvents ( self . viewTag ) ;
}
if ( - 1 !== self . deferredCompute ) {
const _cancelAnimationFrame = cancelAnimationFrame ;
cancelAnimationFrame ( self . deferredCompute ) ;
}
if ( - 1 !== self . viewabilityDebounce ) {
const _clearTimeout = clearTimeout ;
clearTimeout ( self . viewabilityDebounce ) ;
}
}
} ;
items [ 9 ] = {
key : "anchorScroll" ,
value() {
let getAnchorIndexFromId ;
let stickySectionsVariant ;
const self = this ;
( { getAnchorIndexFromId , stickySectionsVariant } = this . props ) ;
let str = "default" ;
if ( undefined !== stickySectionsVariant ) {
str = stickySectionsVariant ;
}
const fastListComputer = self . state . fastListComputer ;
if ( null != getAnchorIndexFromId ) {
const anchorOffset = self . scrollAnchor . anchorOffset ;
if ( null != anchorOffset ) {
const scrollAnchor = self . scrollAnchor ;
const anchorIndex = scrollAnchor . getAnchorIndex ( getAnchorIndexFromId ) ;
if ( null != anchorIndex ) {
const scrollPosition = fastListComputer . computeScrollPosition ( "default" === str , anchorIndex . section , anchorIndex . item ) ;
if ( tmp3 ) {
self . scrollTo ( scrollPosition . scrollPosition - anchorOffset ) ;
}
2026-07-23 10:11:24 +00:00
tmp3 = null != scrollPosition && self . scrollPos !== scrollPosition . scrollPosition - anchorOffset ;
2026-07-20 16:05:17 +00:00
}
}
}
}
} ;
items [ 10 ] = {
key : "getSectionItemFromPosition" ,
value ( arg0 , arg1 ) {
const fastListComputer = this . state . fastListComputer ;
return fastListComputer . getSectionItemFromPosition ( arg0 , arg1 ) ;
}
} ;
items [ 11 ] = {
key : "getScrollPositionFromEvent" ,
value ( nativeEvent ) {
const contentOffset = nativeEvent . nativeEvent . contentOffset ;
return this . props . horizontal ? contentOffset.x : contentOffset.y ;
}
} ;
items [ 12 ] = {
key : "restoreScrollPosition" ,
value() {
let initialScrollItem ;
let initialScrollSection ;
2026-07-23 10:11:24 +00:00
let self = this ;
self = this ;
2026-07-20 16:05:17 +00:00
const props = this . props ;
( { initialScrollItem , initialScrollSection } = props ) ;
let num = 0 ;
if ( undefined !== initialScrollSection ) {
num = initialScrollSection ;
}
const initialScrollOrientation = props . initialScrollOrientation ;
let str = "visible" ;
if ( undefined !== initialScrollOrientation ) {
str = initialScrollOrientation ;
}
const initialScrollStart = props . initialScrollStart ;
if ( null == initialScrollItem ) {
if ( num <= 0 ) {
if ( null == initialScrollStart ) {
const blocks = self . computeBlocks ( ) ;
}
}
}
if ( null != initialScrollStart ) {
self . scrollTo ( initialScrollStart , false ) ;
} else {
const obj = { section : num } ;
let num2 = - 1 ;
if ( null != initialScrollItem ) {
num2 = initialScrollItem ;
}
obj . item = num2 ;
obj . orientation = str ;
obj . paddingEnd = 16 ;
obj . setAnchor = true ;
if ( self . scrollToLocation ( obj ) ) {
self . deferNextCompute = true ;
} else {
const scrollPosValue = self . scrollPosValue ;
const result = scrollPosValue . set ( 0 ) ;
if ( - 1 !== self . deferredCompute ) {
const _cancelAnimationFrame = cancelAnimationFrame ;
cancelAnimationFrame ( self . deferredCompute ) ;
}
const _requestAnimationFrame = requestAnimationFrame ;
self . deferredCompute = requestAnimationFrame ( ( ) = > self . computeBlocks ( ) ) ;
}
}
}
} ;
items [ 13 ] = {
key : "computeBlocks" ,
value() {
let isFirstLayout ;
let items ;
const self = this ;
const props = this . props ;
let containerSize = props . chunkBase ;
const state = this . state ;
const fastListComputer = state . fastListComputer ;
( { isFirstLayout , items } = state ) ;
if ( null == containerSize ) {
containerSize = self . containerSize ;
}
2026-07-23 10:11:24 +00:00
const tmpResult = outer1_37 ( containerSize , self . scrollPos , props . batchesToRender ) ;
2026-07-20 16:05:17 +00:00
if ( tmpResult . batchSize === self . state . batchSize ) {
if ( tmpResult . blockStart === self . state . blockStart ) {
if ( tmpResult . blockEnd === self . state . blockEnd ) {
if ( isFirstLayout ) {
let obj = { isFirstLayout : false } ;
self . setState ( obj ) ;
}
}
}
}
obj = { } ;
const merged = Object . assign ( tmpResult ) ;
const merged1 = Object . assign ( fastListComputer . compute ( tmpResult . blockStart , tmpResult . blockEnd , items ) ) ;
obj [ "isFirstLayout" ] = false ;
self . setState ( obj ) ;
}
} ;
items [ 14 ] = {
key : "renderItems" ,
value() {
let iter2 ;
let key ;
let layoutSize ;
let layoutStart ;
let recyclerKey ;
let section ;
let type ;
const self = this ;
const props = this . props ;
const stickySectionsVariant = props . stickySectionsVariant ;
let str = "default" ;
if ( undefined !== stickySectionsVariant ) {
str = stickySectionsVariant ;
}
let renderHeader = props . renderHeader ;
if ( undefined === renderHeader ) {
2026-07-23 10:11:24 +00:00
renderHeader = outer1_34 ;
2026-07-20 16:05:17 +00:00
}
let renderFooter = props . renderFooter ;
if ( undefined === renderFooter ) {
2026-07-23 10:11:24 +00:00
renderFooter = outer1_34 ;
2026-07-20 16:05:17 +00:00
}
let renderSection = props . renderSection ;
if ( undefined === renderSection ) {
2026-07-23 10:11:24 +00:00
renderSection = outer1_34 ;
2026-07-20 16:05:17 +00:00
}
const renderItem = props . renderItem ;
let renderSectionFooter = props . renderSectionFooter ;
if ( undefined === renderSectionFooter ) {
2026-07-23 10:11:24 +00:00
renderSectionFooter = outer1_34 ;
2026-07-20 16:05:17 +00:00
}
const optimizeListItemRender = props . optimizeListItemRender ;
const items = self . state . items ;
const horizontal = self . props . horizontal ;
const items1 = [ ] ;
const item = items . forEach ( ( type ) = > {
2026-07-23 10:11:24 +00:00
if ( type . type === outer2_19 . SECTION ) {
2026-07-20 16:05:17 +00:00
items1 . push ( tmp ) ;
}
} ) ;
const items2 = [ ] ;
2026-07-23 10:11:24 +00:00
const tmp5 = outer1_32 ( items ) ;
2026-07-20 16:05:17 +00:00
let iter = tmp5 ( ) ;
if ( ! iter . done ) {
do {
( { type , key , layoutStart , recyclerKey , layoutSize , section } = iter . value ) ;
if ( 0 !== layoutSize ) {
2026-07-23 10:11:24 +00:00
let tmp26 = outer1_19 ;
if ( outer1_19 . SPACER === type ) {
let tmp23 = outer1_16 ;
let tmp24 = outer1_28 ;
2026-07-20 16:05:17 +00:00
let obj = { horizontal : tmp3 , layoutSize } ;
let _HermesInternal7 = HermesInternal ;
2026-07-23 10:11:24 +00:00
let arr = items2 . push ( outer1_16 ( outer1_28 , obj , "" + key ) ) ;
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
let tmp27 = outer1_19 ;
if ( outer1_19 . HEADER === type ) {
2026-07-20 16:05:17 +00:00
obj = { recyclerKey , horizontal : tmp3 , disableWrapper : tmp2 , fastListInstance : self , layoutSize , debug : false } ;
let fn6 = renderHeader ;
2026-07-23 10:11:24 +00:00
let tmp20 = outer1_16 ;
let tmp21 = outer1_27 ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
fn6 = ( arg0 ) = > renderHeader ( . . . HermesBuiltin . copyRestArgs ( ) ) ;
}
obj . children = fn6 ;
let _HermesInternal6 = HermesInternal ;
arr = items2 . push ( tmp20 ( tmp21 , obj , "" + key ) ) ;
} else {
2026-07-23 10:11:24 +00:00
let tmp28 = outer1_19 ;
if ( outer1_19 . FOOTER === type ) {
2026-07-20 16:05:17 +00:00
let obj1 = { recyclerKey , horizontal : tmp3 , disableWrapper : tmp2 , fastListInstance : self , layoutSize , debug : false } ;
let fn5 = renderFooter ;
2026-07-23 10:11:24 +00:00
let tmp17 = outer1_16 ;
let tmp18 = outer1_27 ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
fn5 = ( arg0 ) = > renderFooter ( . . . HermesBuiltin . copyRestArgs ( ) ) ;
}
obj1 . children = fn5 ;
let _HermesInternal5 = HermesInternal ;
let arr1 = items2 . push ( tmp17 ( tmp18 , obj1 , "" + key ) ) ;
} else {
2026-07-23 10:11:24 +00:00
let tmp29 = outer1_19 ;
if ( outer1_19 . SECTION === type ) {
2026-07-20 16:05:17 +00:00
let arr2 = items1 . shift ( ) ;
if ( "default" !== str ) {
let obj2 = { recyclerKey , horizontal : tmp3 , disableWrapper : tmp2 , layoutStart , layoutSize , fastListInstance : self , section , debug : false } ;
let fn4 = renderSection ;
2026-07-23 10:11:24 +00:00
let tmp14 = outer1_16 ;
let tmp15 = outer1_24 ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
fn4 = ( arg0 ) = > renderSection ( . . . HermesBuiltin . copyRestArgs ( ) ) ;
}
obj2 . children = fn4 ;
let _HermesInternal4 = HermesInternal ;
let arr3 = items2 . push ( tmp14 ( tmp15 , obj2 , "" + key ) ) ;
} else {
let obj3 = { recyclerKey , horizontal : tmp3 , disableWrapper : tmp2 , layoutStart , layoutSize , nextSectionLayoutPosition : items1 [ 0 ] , scrollPosValue : self.scrollPosValue , fastListInstance : self , section , debug : false } ;
let fn3 = renderSection ;
2026-07-23 10:11:24 +00:00
let tmp33 = outer1_16 ;
let tmp34 = outer1_23 ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
fn3 = ( arg0 ) = > renderSection ( . . . HermesBuiltin . copyRestArgs ( ) ) ;
}
obj3 . children = fn3 ;
let _HermesInternal3 = HermesInternal ;
let arr4 = items2 . push ( tmp33 ( tmp34 , obj3 , "" + key ) ) ;
}
} else {
2026-07-23 10:11:24 +00:00
let tmp30 = outer1_19 ;
if ( outer1_19 . ITEM === type ) {
2026-07-20 16:05:17 +00:00
obj = { recyclerKey , horizontal : tmp3 , disableWrapper : tmp2 , layoutSize , fastListInstance : self , section , item : tmp6 , debug : false } ;
let fn2 = renderItem ;
2026-07-23 10:11:24 +00:00
let tmp9 = outer1_16 ;
let tmp10 = outer1_26 ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
fn2 = ( arg0 ) = > renderItem ( . . . HermesBuiltin . copyRestArgs ( ) ) ;
}
obj . children = fn2 ;
let _HermesInternal2 = HermesInternal ;
let arr5 = items2 . push ( tmp9 ( tmp10 , obj , "" + key ) ) ;
} else {
2026-07-23 10:11:24 +00:00
let tmp7 = outer1_19 ;
if ( outer1_19 . SECTION_FOOTER === type ) {
2026-07-20 16:05:17 +00:00
let obj4 = { recyclerKey , horizontal : tmp3 , disableWrapper : tmp2 , fastListInstance : self , layoutSize , section , debug : false } ;
let fn = renderSectionFooter ;
2026-07-23 10:11:24 +00:00
let tmp31 = outer1_16 ;
let tmp32 = outer1_25 ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
fn = ( arg0 ) = > renderSectionFooter ( . . . HermesBuiltin . copyRestArgs ( ) ) ;
}
obj4 . children = fn ;
let _HermesInternal = HermesInternal ;
let arr6 = items2 . push ( tmp31 ( tmp32 , obj4 , "" + key ) ) ;
}
}
}
}
}
}
}
iter2 = tmp5 ( ) ;
iter = iter2 ;
} while ( ! iter2 . done ) ;
}
return items2 ;
}
} ;
items [ 15 ] = {
key : "isEmpty" ,
value() {
const sections = this . props . sections ;
return 0 === sections . reduce ( ( arg0 , arg1 ) = > arg0 + arg1 , 0 ) ;
}
} ;
items [ 16 ] = {
key : "setDisableRecycling" ,
value ( arg0 ) {
const fastListComputer = this . state . fastListComputer ;
fastListComputer . setDisableRecycling ( arg0 ) ;
}
} ;
items [ 17 ] = {
key : "render" ,
value() {
let EXPERIMENTAL_enableAnchorWhileScrolling ;
let batchesToRender ;
let childrenWrapper ;
let chunkBase ;
let debugLayout ;
let disableContentWrappers ;
let disableLegacyGestureHandling ;
let disableRecyclingOnFullCompute ;
let endReachedThreshold ;
let footerSize ;
let getAnchorIdFromIndex ;
let getAnchorIndexFromId ;
let getRecyclerKey ;
let headerSize ;
let initialScrollItem ;
let initialScrollOrientation ;
let initialScrollSection ;
let initialScrollStart ;
let itemSize ;
let manualRef ;
let onEndReached ;
let onLayout ;
let onScroll ;
let onScrollEnd ;
let onScrollWorklet ;
let onViewableItemsChanged ;
let optimizeListItemRender ;
let persistantKeys ;
let removeClippedSubviews ;
let renderAccessory ;
let renderFooter ;
let renderHeader ;
let renderItem ;
let renderSection ;
let renderSectionFooter ;
let scrollPosValue ;
let sectionFooterSize ;
let sectionSize ;
let sections ;
let stickyHeaderFooter ;
let stickySectionsVariant ;
let viewabilityConfig ;
const self = this ;
const props = this . props ;
( { manualRef , onScroll , onScrollWorklet , onScrollEnd , onLayout , renderHeader , renderFooter , renderSection , renderItem , renderSectionFooter , getRecyclerKey , onEndReached , endReachedThreshold , headerSize , footerSize , sectionSize , sectionFooterSize , itemSize , sections , scrollPosValue , batchesToRender , optimizeListItemRender , initialScrollSection , initialScrollItem , initialScrollOrientation , initialScrollStart , getAnchorIdFromIndex , getAnchorIndexFromId , EXPERIMENTAL_enableAnchorWhileScrolling , chunkBase , disableContentWrappers , childrenWrapper , stickyHeaderFooter , stickySectionsVariant , persistantKeys , disableRecyclingOnFullCompute , disableLegacyGestureHandling , viewabilityConfig , onViewableItemsChanged , debugLayout , renderAccessory , removeClippedSubviews } = props ) ;
if ( undefined === removeClippedSubviews ) {
2026-07-23 10:11:24 +00:00
let obj = FastList ( outer1_2 [ 14 ] ) ;
2026-07-20 16:05:17 +00:00
removeClippedSubviews = obj . isAndroid ( ) ;
}
const inActionSheet = props . inActionSheet ;
if ( inActionSheet ) {
2026-07-23 10:11:24 +00:00
let BottomSheetScrollView = FastList ( outer1_2 [ 18 ] ) . BottomSheetScrollView ;
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
BottomSheetScrollView = outer1_13 ;
2026-07-20 16:05:17 +00:00
}
obj = { } ;
2026-07-23 10:11:24 +00:00
const merged = Object . assign ( outer1_4 ( props , outer1_3 ) ) ;
2026-07-20 16:05:17 +00:00
obj [ "accessibilityRole" ] = "list" ;
2026-07-23 10:11:24 +00:00
obj [ "ref" ] = outer1_1 ( outer1_2 [ 19 ] ) ( self . scrollView ) ;
2026-07-20 16:05:17 +00:00
obj [ "scrollEventThrottle" ] = 16 ;
obj [ "contentOffset" ] = self . state . initialContentOffset ;
obj [ "onScroll" ] = self . handleScroll ;
obj [ "onLayout" ] = self . handleLayout ;
obj [ "onMomentumScrollEnd" ] = self . handleMomentumScrollEnd ;
obj [ "onScrollBeginDrag" ] = self . handleScrollBeginDrag ;
obj [ "removeClippedSubviews" ] = removeClippedSubviews ;
obj [ "children" ] = self . renderItems ( ) ;
obj = { } ;
2026-07-23 10:11:24 +00:00
const obj1 = { inActionSheet , children : outer1_16 ( BottomSheetScrollView , obj ) } ;
const items = [ outer1_16 ( outer1_38 , obj1 ) , ] ;
2026-07-20 16:05:17 +00:00
let renderAccessoryResult = null ;
if ( null != renderAccessory ) {
renderAccessoryResult = renderAccessory ( self ) ;
}
items [ 1 ] = renderAccessoryResult ;
obj . children = items ;
2026-07-23 10:11:24 +00:00
return outer1_15 ( outer1_17 , obj ) ;
2026-07-20 16:05:17 +00:00
}
} ;
2026-07-23 10:11:24 +00:00
let items1 = [
2026-07-20 16:05:17 +00:00
{
key : "getDerivedStateFromProps" ,
value ( headerSize , fastListComputer ) {
let blockEnd ;
let blockStart ;
fastListComputer = fastListComputer . fastListComputer ;
let obj = { headerSize : headerSize.headerSize , footerSize : headerSize.footerSize , sectionSize : headerSize.sectionSize , itemSize : headerSize.itemSize , sectionFooterSize : headerSize.sectionFooterSize , sections : headerSize.sections , insetStart : headerSize.insetStart , insetEnd : headerSize.insetEnd , stickyHeaderFooter : headerSize.stickyHeaderFooter , getRecyclerKey : headerSize.getRecyclerKey , persistantKeys : headerSize.persistantKeys , disableRecyclingOnFullCompute : headerSize.disableRecyclingOnFullCompute } ;
fastListComputer . updateProps ( obj ) ;
if ( 0 === fastListComputer . batchSize ) {
obj = { } ;
const merged = Object . assign ( fastListComputer ) ;
const insetStart = headerSize . insetStart ;
let num = 0 ;
if ( null != insetStart ) {
num = insetStart ;
}
const insetEnd = headerSize . insetEnd ;
let num2 = 0 ;
if ( null != insetEnd ) {
num2 = insetEnd ;
}
obj [ "size" ] = num + num2 ;
obj [ "items" ] = [ ] ;
let tmp3 = obj ;
} else {
tmp3 = null ;
if ( fastListComputer . isDirty ( ) ) {
obj = { } ;
const merged1 = Object . assign ( fastListComputer ) ;
let items = fastListComputer . items ;
( { blockStart , blockEnd } = fastListComputer ) ;
if ( null == items ) {
items = [ ] ;
}
const merged2 = Object . assign ( fastListComputer . compute ( blockStart , blockEnd , items ) ) ;
tmp3 = obj ;
}
}
return tmp3 ;
}
}
] ;
return callback2 ( FastList , items , items1 ) ;
2026-07-23 10:11:24 +00:00
} ) ( importAllResult . PureComponent ) ;
obj = { batchesToRender : 12 , contentInset : { top : 0 , right : 0 , left : 0 , bottom : 0 } , disableLegacyGestureHandling : false , disableRecyclingOnFullCompute : false , stickyHeaderFooter : false } ;
tmp7 . defaultProps = obj ;
2026-07-25 08:10:48 +00:00
const animatedComponent = require ( "module_3992" ) . createAnimatedComponent ( tmp7 ) ;
2026-07-23 10:11:24 +00:00
let result = require ( "_getPrototypeOf" ) . fileFinishedImporting ( "lib/native/FastList.tsx" ) ;
2026-07-20 16:05:17 +00:00
export default tmp7 ;
export const DEFAULT_BATCHES_TO_RENDER = 12 ;
export const MINIMUM_BATCHES_TO_RENDER = 5 ;
export const getItemSizeOverrideKey = function getItemSizeOverrideKey ( arg0 , arg1 , arg2 ) {
return "" + arg0 + ":" + arg1 + ":" + arg2 ;
} ;
export const FastListItemTypes = obj ;
export const FastListComputer = tmp6 ;
2026-07-23 10:11:24 +00:00
export { FastListIosFabricGestureWorkaround } ;
2026-07-20 16:05:17 +00:00
export const AnimatedFastList = animatedComponent ;