You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 line
47 KiB

{"ast":null,"code":"'use strict';\n\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _createForOfIteratorHelperLoose from \"@babel/runtime/helpers/createForOfIteratorHelperLoose\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nvar _excluded = [\"ItemSeparatorComponent\", \"SectionSeparatorComponent\", \"renderItem\", \"renderSectionFooter\", \"renderSectionHeader\", \"sections\", \"stickySectionHeadersEnabled\"];\nimport { keyExtractor as defaultKeyExtractor } from \"../VirtualizeUtils\";\nimport View from \"../../../exports/View\";\nimport VirtualizedList from \"../VirtualizedList\";\nimport * as React from 'react';\nimport invariant from 'fbjs/lib/invariant';\nvar VirtualizedSectionList = function (_React$PureComponent) {\n _inherits(VirtualizedSectionList, _React$PureComponent);\n var _super = _createSuper(VirtualizedSectionList);\n function VirtualizedSectionList() {\n var _this;\n _classCallCheck(this, VirtualizedSectionList);\n _this = _super.apply(this, arguments);\n _this._keyExtractor = function (item, index) {\n var info = _this._subExtractor(index);\n return info && info.key || String(index);\n };\n _this._convertViewable = function (viewable) {\n var _info$index;\n invariant(viewable.index != null, 'Received a broken ViewToken');\n var info = _this._subExtractor(viewable.index);\n if (!info) {\n return null;\n }\n var keyExtractorWithNullableIndex = info.section.keyExtractor;\n var keyExtractorWithNonNullableIndex = _this.props.keyExtractor || defaultKeyExtractor;\n var key = keyExtractorWithNullableIndex != null ? keyExtractorWithNullableIndex(viewable.item, info.index) : keyExtractorWithNonNullableIndex(viewable.item, (_info$index = info.index) !== null && _info$index !== void 0 ? _info$index : 0);\n return _objectSpread(_objectSpread({}, viewable), {}, {\n index: info.index,\n key: key,\n section: info.section\n });\n };\n _this._onViewableItemsChanged = function (_ref) {\n var viewableItems = _ref.viewableItems,\n changed = _ref.changed;\n var onViewableItemsChanged = _this.props.onViewableItemsChanged;\n if (onViewableItemsChanged != null) {\n onViewableItemsChanged({\n viewableItems: viewableItems.map(_this._convertViewable, _assertThisInitialized(_this)).filter(Boolean),\n changed: changed.map(_this._convertViewable, _assertThisInitialized(_this)).filter(Boolean)\n });\n }\n };\n _this._renderItem = function (listItemCount) {\n return function (_ref2) {\n var item = _ref2.item,\n index = _ref2.index;\n var info = _this._subExtractor(index);\n if (!info) {\n return null;\n }\n var infoIndex = info.index;\n if (infoIndex == null) {\n var section = info.section;\n if (info.header === true) {\n var renderSectionHeader = _this.props.renderSectionHeader;\n return renderSectionHeader ? renderSectionHeader({\n section: section\n }) : null;\n } else {\n var renderSectionFooter = _this.props.renderSectionFooter;\n return renderSectionFooter ? renderSectionFooter({\n section: section\n }) : null;\n }\n } else {\n var renderItem = info.section.renderItem || _this.props.renderItem;\n var SeparatorComponent = _this._getSeparatorComponent(index, info, listItemCount);\n invariant(renderItem, 'no renderItem!');\n return React.createElement(ItemWithSeparator, {\n SeparatorComponent: SeparatorComponent,\n LeadingSeparatorComponent: infoIndex === 0 ? _this.props.SectionSeparatorComponent : undefined,\n cellKey: info.key,\n index: infoIndex,\n item: item,\n leadingItem: info.leadingItem,\n leadingSection: info.leadingSection,\n prevCellKey: (_this._subExtractor(index - 1) || {}).key,\n setSelfHighlightCallback: _this._setUpdateHighlightFor,\n setSelfUpdatePropsCallback: _this._setUpdatePropsFor,\n updateHighlightFor: _this._updateHighlightFor,\n updatePropsFor: _this._updatePropsFor,\n renderItem: renderItem,\n section: info.section,\n trailingItem: info.trailingItem,\n trailingSection: info.trailingSection,\n inverted: !!_this.props.inverted\n });\n }\n };\n };\n _this._updatePropsFor = function (cellKey, value) {\n var updateProps = _this._updatePropsMap[cellKey];\n if (updateProps != null) {\n updateProps(value);\n }\n };\n _this._updateHighlightFor = function (cellKey, value) {\n var updateHighlight = _this._updateHighlightMap[cellKey];\n if (updateHighlight != null) {\n updateHighlight(value);\n }\n };\n _this._setUpdateHighlightFor = function (cellKey, updateHighlightFn) {\n if (updateHighlightFn != null) {\n _this._updateHighlightMap[cellKey] = updateHighlightFn;\n } else {\n delete _this._updateHighlightFor[cellKey];\n }\n };\n _this._setUpdatePropsFor = function (cellKey, updatePropsFn) {\n if (updatePropsFn != null) {\n _this._updatePropsMap[cellKey] = updatePropsFn;\n } else {\n delete _this._updatePropsMap[cellKey];\n }\n };\n _this._updateHighlightMap = {};\n _this._updatePropsMap = {};\n _this._captureRef = function (ref) {\n _this._listRef = ref;\n };\n return _this;\n }\n _createClass(VirtualizedSectionList, [{\n key: \"scrollToLocation\",\n value: function scrollToLocation(params) {\n var index = params.itemIndex;\n for (var i = 0; i < params.sectionIndex; i++) {\n index += this.props.getItemCount(this.props.sections[i].data) + 2;\n }\n var viewOffset = params.viewOffset || 0;\n if (this._listRef == null) {\n return;\n }\n if (params.itemIndex > 0 && this.props.stickySectionHeadersEnabled) {\n var frame = this._listRef._getFrameMetricsApprox(index - params.itemIndex);\n viewOffset += frame.length;\n }\n var toIndexParams = _objectSpread(_objectSpread({}, params), {}, {\n viewOffset: viewOffset,\n index: index\n });\n this._listRef.scrollToIndex(toIndexParams);\n }\n }, {\n key: \"getListRef\",\n value: function getListRef() {\n return this._listRef;\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this2 = this;\n var _this$props = this.props,\n ItemSeparatorComponent = _this$props.ItemSeparatorComponent,\n SectionSeparatorComponent = _this$props.SectionSeparatorComponent,\n _renderItem = _this$props.renderItem,\n renderSectionFooter = _this$props.renderSectionFooter,\n renderSectionHeader = _this$props.renderSectionHeader,\n _sections = _this$props.sections,\n stickySectionHeadersEnabled = _this$props.stickySectionHeadersEnabled,\n passThroughProps = _objectWithoutPropertiesLoose(_this$props, _excluded);\n var listHeaderOffset = this.props.ListHeaderComponent ? 1 : 0;\n var stickyHeaderIndices = this.props.stickySectionHeadersEnabled ? [] : undefined;\n var itemCount = 0;\n for (var _iterator = _createForOfIteratorHelperLoose(this.props.sections), _step; !(_step = _iterator()).done;) {\n var section = _step.value;\n if (stickyHeaderIndices != null) {\n stickyHeaderIndices.push(itemCount + listHeaderOffset);\n }\n itemCount += 2;\n itemCount += this.props.getItemCount(section.data);\n }\n var renderItem = this._renderItem(itemCount);\n return React.createElement(VirtualizedList, _extends({}, passThroughProps, {\n keyExtractor: this._keyExtractor,\n stickyHeaderIndices: stickyHeaderIndices,\n renderItem: renderItem,\n data: this.props.sections,\n getItem: function getItem(sections, index) {\n return _this2._getItem(_this2.props, sections, index);\n },\n getItemCount: function getItemCount() {\n return itemCount;\n },\n onViewableItemsChanged: this.props.onViewableItemsChanged ? this._onViewableItemsChanged : undefined,\n ref: this._captureRef\n }));\n }\n }, {\n key: \"_getItem\",\n value: function _getItem(props, sections, index) {\n if (!sections) {\n return null;\n }\n var itemIdx = index - 1;\n for (var i = 0; i < sections.length; i++) {\n var section = sections[i];\n var sectionData = section.data;\n var itemCount = props.getItemCount(sectionData);\n if (itemIdx === -1 || itemIdx === itemCount) {\n return section;\n } else if (itemIdx < itemCount) {\n return props.getItem(sectionData, itemIdx);\n } else {\n itemIdx -= itemCount + 2;\n }\n }\n return null;\n }\n }, {\n key: \"_subExtractor\",\n value: function _subExtractor(index) {\n var itemIndex = index;\n var _this$props2 = this.props,\n getItem = _this$props2.getItem,\n getItemCount = _this$props2.getItemCount,\n keyExtractor = _this$props2.keyExtractor,\n sections = _this$props2.sections;\n for (var i = 0; i < sections.length; i++) {\n var section = sections[i];\n var sectionData = section.data;\n var key = section.key || String(i);\n itemIndex -= 1;\n if (itemIndex >= getItemCount(sectionData) + 1) {\n itemIndex -= getItemCount(sectionData) + 1;\n } else if (itemIndex === -1) {\n return {\n section: section,\n key: key + ':header',\n index: null,\n header: true,\n trailingSection: sections[i + 1]\n };\n } else if (itemIndex === getItemCount(sectionData)) {\n return {\n section: section,\n key: key + ':footer',\n index: null,\n header: false,\n trailingSection: sections[i + 1]\n };\n } else {\n var extractor = section.keyExtractor || keyExtractor || defaultKeyExtractor;\n return {\n section: section,\n key: key + ':' + extractor(getItem(sectionData, itemIndex), itemIndex),\n index: itemIndex,\n leadingItem: getItem(sectionData, itemIndex - 1),\n leadingSection: sections[i - 1],\n trailingItem: getItem(sectionData, itemIndex + 1),\n trailingSection: sections[i + 1]\n };\n }\n }\n }\n }, {\n key: \"_getSeparatorComponent\",\n value: function _getSeparatorComponent(index, info, listItemCount) {\n info = info || this._subExtractor(index);\n if (!info) {\n return null;\n }\n var ItemSeparatorComponent = info.section.ItemSeparatorComponent || this.props.ItemSeparatorComponent;\n var SectionSeparatorComponent = this.props.SectionSeparatorComponent;\n var isLastItemInList = index === listItemCount - 1;\n var isLastItemInSection = info.index === this.props.getItemCount(info.section.data) - 1;\n if (SectionSeparatorComponent && isLastItemInSection) {\n return SectionSeparatorComponent;\n }\n if (ItemSeparatorComponent && !isLastItemInSection && !isLastItemInList) {\n return ItemSeparatorComponent;\n }\n return null;\n }\n }]);\n return VirtualizedSectionList;\n}(React.PureComponent);\nfunction ItemWithSeparator(props) {\n var LeadingSeparatorComponent = props.LeadingSeparatorComponent,\n SeparatorComponent = props.SeparatorComponent,\n cellKey = props.cellKey,\n prevCellKey = props.prevCellKey,\n setSelfHighlightCallback = props.setSelfHighlightCallback,\n updateHighlightFor = props.updateHighlightFor,\n setSelfUpdatePropsCallback = props.setSelfUpdatePropsCallback,\n updatePropsFor = props.updatePropsFor,\n item = props.item,\n index = props.index,\n section = props.section,\n inverted = props.inverted;\n var _React$useState = React.useState(false),\n leadingSeparatorHiglighted = _React$useState[0],\n setLeadingSeparatorHighlighted = _React$useState[1];\n var _React$useState2 = React.useState(false),\n separatorHighlighted = _React$useState2[0],\n setSeparatorHighlighted = _React$useState2[1];\n var _React$useState3 = React.useState({\n leadingItem: props.leadingItem,\n leadingSection: props.leadingSection,\n section: props.section,\n trailingItem: props.item,\n trailingSection: props.trailingSection\n }),\n leadingSeparatorProps = _React$useState3[0],\n setLeadingSeparatorProps = _React$useState3[1];\n var _React$useState4 = React.useState({\n leadingItem: props.item,\n leadingSection: props.leadingSection,\n section: props.section,\n trailingItem: props.trailingItem,\n trailingSection: props.trailingSection\n }),\n separatorProps = _React$useState4[0],\n setSeparatorProps = _React$useState4[1];\n React.useEffect(function () {\n setSelfHighlightCallback(cellKey, setSeparatorHighlighted);\n setSelfUpdatePropsCallback(cellKey, setSeparatorProps);\n return function () {\n setSelfUpdatePropsCallback(cellKey, null);\n setSelfHighlightCallback(cellKey, null);\n };\n }, [cellKey, setSelfHighlightCallback, setSeparatorProps, setSelfUpdatePropsCallback]);\n var separators = {\n highlight: function highlight() {\n setLeadingSeparatorHighlighted(true);\n setSeparatorHighlighted(true);\n if (prevCellKey != null) {\n updateHighlightFor(prevCellKey, true);\n }\n },\n unhighlight: function unhighlight() {\n setLeadingSeparatorHighlighted(false);\n setSeparatorHighlighted(false);\n if (prevCellKey != null) {\n updateHighlightFor(prevCellKey, false);\n }\n },\n updateProps: function updateProps(select, newProps) {\n if (select === 'leading') {\n if (LeadingSeparatorComponent != null) {\n setLeadingSeparatorProps(_objectSpread(_objectSpread({}, leadingSeparatorProps), newProps));\n } else if (prevCellKey != null) {\n updatePropsFor(prevCellKey, _objectSpread(_objectSpread({}, leadingSeparatorProps), newProps));\n }\n } else if (select === 'trailing' && SeparatorComponent != null) {\n setSeparatorProps(_objectSpread(_objectSpread({}, separatorProps), newProps));\n }\n }\n };\n var element = props.renderItem({\n item: item,\n index: index,\n section: section,\n separators: separators\n });\n var leadingSeparator = LeadingSeparatorComponent != null && React.createElement(LeadingSeparatorComponent, _extends({\n highlighted: leadingSeparatorHiglighted\n }, leadingSeparatorProps));\n var separator = SeparatorComponent != null && React.createElement(SeparatorComponent, _extends({\n highlighted: separatorHighlighted\n }, separatorProps));\n return leadingSeparator || separator ? React.createElement(View, null, inverted === false ? leadingSeparator : separator, element, inverted === false ? separator : leadingSeparator) : element;\n}\nexport default VirtualizedSectionList;","map":{"version":3,"names":["_extends","_createForOfIteratorHelperLoose","_objectWithoutPropertiesLoose","_objectSpread","_excluded","keyExtractor","defaultKeyExtractor","View","VirtualizedList","React","invariant","VirtualizedSectionList","arguments","_keyExtractor","item","index","info","_subExtractor","key","String","_convertViewable","viewable","_info$index","keyExtractorWithNullableIndex","section","keyExtractorWithNonNullableIndex","props","_onViewableItemsChanged","_ref","viewableItems","changed","onViewableItemsChanged","map","filter","Boolean","_renderItem","listItemCount","_ref2","infoIndex","header","renderSectionHeader","renderSectionFooter","renderItem","SeparatorComponent","_getSeparatorComponent","createElement","ItemWithSeparator","LeadingSeparatorComponent","SectionSeparatorComponent","undefined","cellKey","leadingItem","leadingSection","prevCellKey","setSelfHighlightCallback","_setUpdateHighlightFor","setSelfUpdatePropsCallback","_setUpdatePropsFor","updateHighlightFor","_updateHighlightFor","updatePropsFor","_updatePropsFor","trailingItem","trailingSection","inverted","value","updateProps","_updatePropsMap","updateHighlight","_updateHighlightMap","updateHighlightFn","updatePropsFn","_captureRef","ref","_listRef","params","itemIndex","i","sectionIndex","getItemCount","sections","data","viewOffset","stickySectionHeadersEnabled","frame","_getFrameMetricsApprox","length","toIndexParams","scrollToIndex","_this$props","ItemSeparatorComponent","_sections","passThroughProps","listHeaderOffset","ListHeaderComponent","stickyHeaderIndices","itemCount","_iterator","_step","done","push","getItem","_getItem","itemIdx","sectionData","_this$props2","extractor","isLastItemInList","isLastItemInSection","PureComponent","_React$useState","useState","leadingSeparatorHiglighted","setLeadingSeparatorHighlighted","_React$useState2","separatorHighlighted","setSeparatorHighlighted","_React$useState3","leadingSeparatorProps","setLeadingSeparatorProps","_React$useState4","separatorProps","setSeparatorProps","useEffect","separators","highlight","unhighlight","select","newProps","element","leadingSeparator","highlighted","separator"],"sources":["/Users/thomaschazot/Documents/But2A/LaSuperMeteo/iut-expo-starter/node_modules/react-native-web/dist/vendor/react-native/VirtualizedSectionList/index.js"],"sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n'use strict';\n\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _createForOfIteratorHelperLoose from \"@babel/runtime/helpers/createForOfIteratorHelperLoose\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nvar _excluded = [\"ItemSeparatorComponent\", \"SectionSeparatorComponent\", \"renderItem\", \"renderSectionFooter\", \"renderSectionHeader\", \"sections\", \"stickySectionHeadersEnabled\"];\nimport { keyExtractor as defaultKeyExtractor } from '../VirtualizeUtils';\nimport View from '../../../exports/View';\nimport VirtualizedList from '../VirtualizedList';\nimport * as React from 'react';\nimport invariant from 'fbjs/lib/invariant';\n\n/**\n * Right now this just flattens everything into one list and uses VirtualizedList under the\n * hood. The only operation that might not scale well is concatting the data arrays of all the\n * sections when new props are received, which should be plenty fast for up to ~10,000 items.\n */\nclass VirtualizedSectionList extends React.PureComponent {\n constructor() {\n super(...arguments);\n\n this._keyExtractor = (item, index) => {\n var info = this._subExtractor(index);\n\n return info && info.key || String(index);\n };\n\n this._convertViewable = viewable => {\n var _info$index;\n\n invariant(viewable.index != null, 'Received a broken ViewToken');\n\n var info = this._subExtractor(viewable.index);\n\n if (!info) {\n return null;\n }\n\n var keyExtractorWithNullableIndex = info.section.keyExtractor;\n var keyExtractorWithNonNullableIndex = this.props.keyExtractor || defaultKeyExtractor;\n var key = keyExtractorWithNullableIndex != null ? keyExtractorWithNullableIndex(viewable.item, info.index) : keyExtractorWithNonNullableIndex(viewable.item, (_info$index = info.index) !== null && _info$index !== void 0 ? _info$index : 0);\n return _objectSpread(_objectSpread({}, viewable), {}, {\n index: info.index,\n key,\n section: info.section\n });\n };\n\n this._onViewableItemsChanged = _ref => {\n var viewableItems = _ref.viewableItems,\n changed = _ref.changed;\n var onViewableItemsChanged = this.props.onViewableItemsChanged;\n\n if (onViewableItemsChanged != null) {\n onViewableItemsChanged({\n viewableItems: viewableItems.map(this._convertViewable, this).filter(Boolean),\n changed: changed.map(this._convertViewable, this).filter(Boolean)\n });\n }\n };\n\n this._renderItem = listItemCount => _ref2 => {\n var item = _ref2.item,\n index = _ref2.index;\n\n var info = this._subExtractor(index);\n\n if (!info) {\n return null;\n }\n\n var infoIndex = info.index;\n\n if (infoIndex == null) {\n var section = info.section;\n\n if (info.header === true) {\n var renderSectionHeader = this.props.renderSectionHeader;\n return renderSectionHeader ? renderSectionHeader({\n section\n }) : null;\n } else {\n var renderSectionFooter = this.props.renderSectionFooter;\n return renderSectionFooter ? renderSectionFooter({\n section\n }) : null;\n }\n } else {\n var renderItem = info.section.renderItem || this.props.renderItem;\n\n var SeparatorComponent = this._getSeparatorComponent(index, info, listItemCount);\n\n invariant(renderItem, 'no renderItem!');\n return /*#__PURE__*/React.createElement(ItemWithSeparator, {\n SeparatorComponent: SeparatorComponent,\n LeadingSeparatorComponent: infoIndex === 0 ? this.props.SectionSeparatorComponent : undefined,\n cellKey: info.key,\n index: infoIndex,\n item: item,\n leadingItem: info.leadingItem,\n leadingSection: info.leadingSection,\n prevCellKey: (this._subExtractor(index - 1) || {}).key // Callback to provide updateHighlight for this item\n ,\n setSelfHighlightCallback: this._setUpdateHighlightFor,\n setSelfUpdatePropsCallback: this._setUpdatePropsFor // Provide child ability to set highlight/updateProps for previous item using prevCellKey\n ,\n updateHighlightFor: this._updateHighlightFor,\n updatePropsFor: this._updatePropsFor,\n renderItem: renderItem,\n section: info.section,\n trailingItem: info.trailingItem,\n trailingSection: info.trailingSection,\n inverted: !!this.props.inverted\n });\n }\n };\n\n this._updatePropsFor = (cellKey, value) => {\n var updateProps = this._updatePropsMap[cellKey];\n\n if (updateProps != null) {\n updateProps(value);\n }\n };\n\n this._updateHighlightFor = (cellKey, value) => {\n var updateHighlight = this._updateHighlightMap[cellKey];\n\n if (updateHighlight != null) {\n updateHighlight(value);\n }\n };\n\n this._setUpdateHighlightFor = (cellKey, updateHighlightFn) => {\n if (updateHighlightFn != null) {\n this._updateHighlightMap[cellKey] = updateHighlightFn;\n } else {\n delete this._updateHighlightFor[cellKey];\n }\n };\n\n this._setUpdatePropsFor = (cellKey, updatePropsFn) => {\n if (updatePropsFn != null) {\n this._updatePropsMap[cellKey] = updatePropsFn;\n } else {\n delete this._updatePropsMap[cellKey];\n }\n };\n\n this._updateHighlightMap = {};\n this._updatePropsMap = {};\n\n this._captureRef = ref => {\n this._listRef = ref;\n };\n }\n\n scrollToLocation(params) {\n var index = params.itemIndex;\n\n for (var i = 0; i < params.sectionIndex; i++) {\n index += this.props.getItemCount(this.props.sections[i].data) + 2;\n }\n\n var viewOffset = params.viewOffset || 0;\n\n if (this._listRef == null) {\n return;\n }\n\n if (params.itemIndex > 0 && this.props.stickySectionHeadersEnabled) {\n // $FlowFixMe[prop-missing] Cannot access private property\n var frame = this._listRef._getFrameMetricsApprox(index - params.itemIndex);\n\n viewOffset += frame.length;\n }\n\n var toIndexParams = _objectSpread(_objectSpread({}, params), {}, {\n viewOffset,\n index\n });\n\n this._listRef.scrollToIndex(toIndexParams);\n }\n\n getListRef() {\n return this._listRef;\n }\n\n render() {\n var _this$props = this.props,\n ItemSeparatorComponent = _this$props.ItemSeparatorComponent,\n SectionSeparatorComponent = _this$props.SectionSeparatorComponent,\n _renderItem = _this$props.renderItem,\n renderSectionFooter = _this$props.renderSectionFooter,\n renderSectionHeader = _this$props.renderSectionHeader,\n _sections = _this$props.sections,\n stickySectionHeadersEnabled = _this$props.stickySectionHeadersEnabled,\n passThroughProps = _objectWithoutPropertiesLoose(_this$props, _excluded);\n\n var listHeaderOffset = this.props.ListHeaderComponent ? 1 : 0;\n var stickyHeaderIndices = this.props.stickySectionHeadersEnabled ? [] : undefined;\n var itemCount = 0;\n\n for (var _iterator = _createForOfIteratorHelperLoose(this.props.sections), _step; !(_step = _iterator()).done;) {\n var section = _step.value;\n\n // Track the section header indices\n if (stickyHeaderIndices != null) {\n stickyHeaderIndices.push(itemCount + listHeaderOffset);\n } // Add two for the section header and footer.\n\n\n itemCount += 2;\n itemCount += this.props.getItemCount(section.data);\n }\n\n var renderItem = this._renderItem(itemCount);\n\n return /*#__PURE__*/React.createElement(VirtualizedList, _extends({}, passThroughProps, {\n keyExtractor: this._keyExtractor,\n stickyHeaderIndices: stickyHeaderIndices,\n renderItem: renderItem,\n data: this.props.sections,\n getItem: (sections, index) => this._getItem(this.props, sections, index),\n getItemCount: () => itemCount,\n onViewableItemsChanged: this.props.onViewableItemsChanged ? this._onViewableItemsChanged : undefined,\n ref: this._captureRef\n }));\n }\n\n _getItem(props, sections, index) {\n if (!sections) {\n return null;\n }\n\n var itemIdx = index - 1;\n\n for (var i = 0; i < sections.length; i++) {\n var section = sections[i];\n var sectionData = section.data;\n var itemCount = props.getItemCount(sectionData);\n\n if (itemIdx === -1 || itemIdx === itemCount) {\n // We intend for there to be overflow by one on both ends of the list.\n // This will be for headers and footers. When returning a header or footer\n // item the section itself is the item.\n return section;\n } else if (itemIdx < itemCount) {\n // If we are in the bounds of the list's data then return the item.\n return props.getItem(sectionData, itemIdx);\n } else {\n itemIdx -= itemCount + 2; // Add two for the header and footer\n }\n }\n\n return null;\n }\n\n _subExtractor(index) {\n var itemIndex = index;\n var _this$props2 = this.props,\n getItem = _this$props2.getItem,\n getItemCount = _this$props2.getItemCount,\n keyExtractor = _this$props2.keyExtractor,\n sections = _this$props2.sections;\n\n for (var i = 0; i < sections.length; i++) {\n var section = sections[i];\n var sectionData = section.data;\n var key = section.key || String(i);\n itemIndex -= 1; // The section adds an item for the header\n\n if (itemIndex >= getItemCount(sectionData) + 1) {\n itemIndex -= getItemCount(sectionData) + 1; // The section adds an item for the footer.\n } else if (itemIndex === -1) {\n return {\n section,\n key: key + ':header',\n index: null,\n header: true,\n trailingSection: sections[i + 1]\n };\n } else if (itemIndex === getItemCount(sectionData)) {\n return {\n section,\n key: key + ':footer',\n index: null,\n header: false,\n trailingSection: sections[i + 1]\n };\n } else {\n var extractor = section.keyExtractor || keyExtractor || defaultKeyExtractor;\n return {\n section,\n key: key + ':' + extractor(getItem(sectionData, itemIndex), itemIndex),\n index: itemIndex,\n leadingItem: getItem(sectionData, itemIndex - 1),\n leadingSection: sections[i - 1],\n trailingItem: getItem(sectionData, itemIndex + 1),\n trailingSection: sections[i + 1]\n };\n }\n }\n }\n\n _getSeparatorComponent(index, info, listItemCount) {\n info = info || this._subExtractor(index);\n\n if (!info) {\n return null;\n }\n\n var ItemSeparatorComponent = info.section.ItemSeparatorComponent || this.props.ItemSeparatorComponent;\n var SectionSeparatorComponent = this.props.SectionSeparatorComponent;\n var isLastItemInList = index === listItemCount - 1;\n var isLastItemInSection = info.index === this.props.getItemCount(info.section.data) - 1;\n\n if (SectionSeparatorComponent && isLastItemInSection) {\n return SectionSeparatorComponent;\n }\n\n if (ItemSeparatorComponent && !isLastItemInSection && !isLastItemInList) {\n return ItemSeparatorComponent;\n }\n\n return null;\n }\n\n}\n\nfunction ItemWithSeparator(props) {\n var LeadingSeparatorComponent = props.LeadingSeparatorComponent,\n SeparatorComponent = props.SeparatorComponent,\n cellKey = props.cellKey,\n prevCellKey = props.prevCellKey,\n setSelfHighlightCallback = props.setSelfHighlightCallback,\n updateHighlightFor = props.updateHighlightFor,\n setSelfUpdatePropsCallback = props.setSelfUpdatePropsCallback,\n updatePropsFor = props.updatePropsFor,\n item = props.item,\n index = props.index,\n section = props.section,\n inverted = props.inverted;\n\n var _React$useState = React.useState(false),\n leadingSeparatorHiglighted = _React$useState[0],\n setLeadingSeparatorHighlighted = _React$useState[1];\n\n var _React$useState2 = React.useState(false),\n separatorHighlighted = _React$useState2[0],\n setSeparatorHighlighted = _React$useState2[1];\n\n var _React$useState3 = React.useState({\n leadingItem: props.leadingItem,\n leadingSection: props.leadingSection,\n section: props.section,\n trailingItem: props.item,\n trailingSection: props.trailingSection\n }),\n leadingSeparatorProps = _React$useState3[0],\n setLeadingSeparatorProps = _React$useState3[1];\n\n var _React$useState4 = React.useState({\n leadingItem: props.item,\n leadingSection: props.leadingSection,\n section: props.section,\n trailingItem: props.trailingItem,\n trailingSection: props.trailingSection\n }),\n separatorProps = _React$useState4[0],\n setSeparatorProps = _React$useState4[1];\n\n React.useEffect(() => {\n setSelfHighlightCallback(cellKey, setSeparatorHighlighted);\n setSelfUpdatePropsCallback(cellKey, setSeparatorProps);\n return () => {\n setSelfUpdatePropsCallback(cellKey, null);\n setSelfHighlightCallback(cellKey, null);\n };\n }, [cellKey, setSelfHighlightCallback, setSeparatorProps, setSelfUpdatePropsCallback]);\n var separators = {\n highlight: () => {\n setLeadingSeparatorHighlighted(true);\n setSeparatorHighlighted(true);\n\n if (prevCellKey != null) {\n updateHighlightFor(prevCellKey, true);\n }\n },\n unhighlight: () => {\n setLeadingSeparatorHighlighted(false);\n setSeparatorHighlighted(false);\n\n if (prevCellKey != null) {\n updateHighlightFor(prevCellKey, false);\n }\n },\n updateProps: (select, newProps) => {\n if (select === 'leading') {\n if (LeadingSeparatorComponent != null) {\n setLeadingSeparatorProps(_objectSpread(_objectSpread({}, leadingSeparatorProps), newProps));\n } else if (prevCellKey != null) {\n // update the previous item's separator\n updatePropsFor(prevCellKey, _objectSpread(_objectSpread({}, leadingSeparatorProps), newProps));\n }\n } else if (select === 'trailing' && SeparatorComponent != null) {\n setSeparatorProps(_objectSpread(_objectSpread({}, separatorProps), newProps));\n }\n }\n };\n var element = props.renderItem({\n item,\n index,\n section,\n separators\n });\n var leadingSeparator = LeadingSeparatorComponent != null && /*#__PURE__*/React.createElement(LeadingSeparatorComponent, _extends({\n highlighted: leadingSeparatorHiglighted\n }, leadingSeparatorProps));\n var separator = SeparatorComponent != null && /*#__PURE__*/React.createElement(SeparatorComponent, _extends({\n highlighted: separatorHighlighted\n }, separatorProps));\n return leadingSeparator || separator ? /*#__PURE__*/React.createElement(View, null, inverted === false ? leadingSeparator : separator, element, inverted === false ? separator : leadingSeparator) : element;\n}\n\nexport default VirtualizedSectionList;"],"mappings":"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"},"metadata":{},"sourceType":"module"}