@shopify/flash-list 1.1.0 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/README.md +3 -2
- package/RNFlashList.podspec +1 -1
- package/android/src/main/kotlin/com/shopify/reactnative/flash_list/AutoLayoutShadow.kt +5 -0
- package/android/src/main/kotlin/com/shopify/reactnative/flash_list/AutoLayoutView.kt +78 -7
- package/dist/FlashList.d.ts +2 -1
- package/dist/FlashList.d.ts.map +1 -1
- package/dist/FlashList.js +38 -17
- package/dist/FlashList.js.map +1 -1
- package/dist/__tests__/FlashList.test.js +62 -2
- package/dist/__tests__/FlashList.test.js.map +1 -1
- package/dist/__tests__/PlatformHelper.web.test.js +9 -1
- package/dist/__tests__/PlatformHelper.web.test.js.map +1 -1
- package/dist/native/auto-layout/AutoLayoutView.d.ts +2 -1
- package/dist/native/auto-layout/AutoLayoutView.d.ts.map +1 -1
- package/dist/native/auto-layout/AutoLayoutView.js.map +1 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.d.ts +4 -0
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.d.ts.map +1 -0
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.js +6 -0
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.js.map +1 -0
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.d.ts +2 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.d.ts.map +1 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.ios.d.ts +4 -0
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.ios.d.ts.map +1 -0
- package/dist/native/auto-layout/{AutoLayoutViewNativeComponent.web.js → AutoLayoutViewNativeComponent.ios.js} +2 -2
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.ios.js.map +1 -0
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.js +1 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.js.map +1 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponentProps.d.ts +2 -0
- package/dist/native/auto-layout/AutoLayoutViewNativeComponentProps.d.ts.map +1 -1
- package/dist/native/cell-container/CellContainer.android.d.ts +6 -0
- package/dist/native/cell-container/CellContainer.android.d.ts.map +1 -0
- package/dist/native/cell-container/CellContainer.android.js +9 -0
- package/dist/native/cell-container/CellContainer.android.js.map +1 -0
- package/dist/native/cell-container/CellContainer.d.ts +6 -4
- package/dist/native/cell-container/CellContainer.d.ts.map +1 -1
- package/dist/native/cell-container/CellContainer.ios.d.ts +6 -0
- package/dist/native/cell-container/CellContainer.ios.d.ts.map +1 -0
- package/dist/native/cell-container/CellContainer.ios.js +9 -0
- package/dist/native/cell-container/CellContainer.ios.js.map +1 -0
- package/dist/native/cell-container/CellContainer.js +6 -4
- package/dist/native/cell-container/CellContainer.js.map +1 -1
- package/dist/native/config/PlatformHelper.android.d.ts +16 -0
- package/dist/native/config/PlatformHelper.android.d.ts.map +1 -0
- package/dist/native/config/PlatformHelper.android.js +20 -0
- package/dist/native/config/PlatformHelper.android.js.map +1 -0
- package/dist/{utils → native/config}/PlatformHelper.d.ts +3 -1
- package/dist/native/config/PlatformHelper.d.ts.map +1 -0
- package/dist/{utils/PlatformHelper.web.d.ts → native/config/PlatformHelper.ios.d.ts} +4 -2
- package/dist/native/config/PlatformHelper.ios.d.ts.map +1 -0
- package/dist/{utils/PlatformHelper.js → native/config/PlatformHelper.ios.js} +6 -2
- package/dist/native/config/PlatformHelper.ios.js.map +1 -0
- package/dist/native/config/PlatformHelper.js +21 -0
- package/dist/native/config/PlatformHelper.js.map +1 -0
- package/dist/native/config/PlatformHelper.web.d.ts +17 -0
- package/dist/native/config/PlatformHelper.web.d.ts.map +1 -0
- package/dist/{utils → native/config}/PlatformHelper.web.js +7 -2
- package/dist/native/config/PlatformHelper.web.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/ios/Sources/AutoLayoutView.swift +61 -8
- package/package.json +12 -3
- package/src/FlashList.tsx +53 -14
- package/src/__tests__/FlashList.test.tsx +65 -2
- package/src/__tests__/PlatformHelper.web.test.ts +17 -1
- package/src/native/auto-layout/AutoLayoutView.tsx +2 -1
- package/src/native/auto-layout/{AutoLayoutViewNativeComponent.web.ts → AutoLayoutViewNativeComponent.android.ts} +2 -3
- package/src/native/auto-layout/AutoLayoutViewNativeComponent.ios.ts +7 -0
- package/src/native/auto-layout/AutoLayoutViewNativeComponent.ts +2 -2
- package/src/native/auto-layout/AutoLayoutViewNativeComponentProps.ts +3 -0
- package/src/native/cell-container/{CellContainer.ts → CellContainer.android.ts} +0 -0
- package/src/native/cell-container/CellContainer.ios.ts +7 -0
- package/src/native/cell-container/CellContainer.tsx +14 -0
- package/src/{utils/PlatformHelper.ts → native/config/PlatformHelper.android.ts} +12 -2
- package/src/native/config/PlatformHelper.ios.ts +26 -0
- package/src/native/config/PlatformHelper.ts +27 -0
- package/src/{utils → native/config}/PlatformHelper.web.ts +15 -3
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.web.d.ts +0 -5
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.web.d.ts.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.web.js.map +0 -1
- package/dist/utils/PlatformHelper.d.ts.map +0 -1
- package/dist/utils/PlatformHelper.js.map +0 -1
- package/dist/utils/PlatformHelper.web.d.ts.map +0 -1
- package/dist/utils/PlatformHelper.web.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,29 @@ and adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
- Fixes type checking error in `AutoLayoutView` due to `children` not being an explicit type
|
|
11
|
+
- https://github.com/Shopify/flash-list/pull/567
|
|
12
|
+
|
|
13
|
+
## [1.2.1] - 2022-08-03
|
|
14
|
+
|
|
15
|
+
- Fixed crash when `estimatedListSize` is used in an empty list
|
|
16
|
+
- https://github.com/Shopify/flash-list/pull/546
|
|
17
|
+
|
|
18
|
+
## [1.2.0] - 2022-07-18
|
|
19
|
+
|
|
20
|
+
- Fixed out of bound read from data
|
|
21
|
+
- https://github.com/Shopify/flash-list/pull/523
|
|
22
|
+
- Added JS only fallbacks for unsupported platforms
|
|
23
|
+
- https://github.com/Shopify/flash-list/pull/518
|
|
24
|
+
- Added footer correction in AutoLayoutView
|
|
25
|
+
- https://github.com/Shopify/flash-list/pull/519
|
|
26
|
+
- Added `viewPosition` and `viewOffset` support scrollTo methods
|
|
27
|
+
- https://github.com/Shopify/flash-list/pull/521
|
|
28
|
+
- Fix inverted mode while being horizontal
|
|
29
|
+
- https://github.com/Shopify/flash-list/pull/520
|
|
30
|
+
- Upgrade recyclerlistview to v4.1.1
|
|
31
|
+
- https://github.com/Shopify/flash-list/pull/526
|
|
32
|
+
|
|
10
33
|
## [1.1.0] - 2022-07-06
|
|
11
34
|
|
|
12
35
|
- Added render target info to `renderItem` callback
|
package/README.md
CHANGED
|
@@ -55,8 +55,9 @@ To avoid common pitfalls, you can also follow these steps for migrating from `Fl
|
|
|
55
55
|
|
|
56
56
|
1. Switch from `FlatList` to `FlashList` and render the list once. You should see a warning about missing `estimatedItemSize` and a suggestion. Set this value as the prop directly.
|
|
57
57
|
2. **Important**: Scan your [`renderItem`](https://shopify.github.io/flash-list/docs/usage/#renderitem) hierarchy for explicit `key` prop definitions and remove them. If you’re doing a `.map()` use indices as keys.
|
|
58
|
-
3.
|
|
59
|
-
4.
|
|
58
|
+
3. Check your [`renderItem`](https://shopify.github.io/flash-list/docs/usage/#renderitem) hierarchy for components that make use of `useState` and verify whether that state would need to be reset if a different item is passed to that component (see [Recycling](https://shopify.github.io/flash-list/docs/recycling))
|
|
59
|
+
4. If your list has heterogenous views, pass their types to `FlashList` using [`getItemType`](https://shopify.github.io/flash-list/docs/usage/#getitemtype) prop to improve performance.
|
|
60
|
+
5. Do not test performance with JS dev mode on. Make sure you’re in release mode. `FlashList` can appear slower while in dev mode due to a small render buffer.
|
|
60
61
|
|
|
61
62
|
## App / Playground
|
|
62
63
|
|
package/RNFlashList.podspec
CHANGED
|
@@ -10,7 +10,7 @@ Pod::Spec.new do |s|
|
|
|
10
10
|
s.license = package['license']
|
|
11
11
|
s.author = package['author']
|
|
12
12
|
s.platforms = { :ios => '11.0', :tvos => '12.0' }
|
|
13
|
-
s.source = { git: 'https://github.com/shopify/flash-list.git', tag:
|
|
13
|
+
s.source = { git: 'https://github.com/shopify/flash-list.git', tag: "v#{s.version}" }
|
|
14
14
|
s.source_files = 'ios/Sources/**/*'
|
|
15
15
|
s.requires_arc = true
|
|
16
16
|
s.swift_version = '5.0'
|
|
@@ -10,6 +10,8 @@ class AutoLayoutShadow {
|
|
|
10
10
|
var blankOffsetAtStart = 0 // Tracks blank area from the top
|
|
11
11
|
var blankOffsetAtEnd = 0 // Tracks blank area from the bottom
|
|
12
12
|
|
|
13
|
+
var lastMaxBoundOverall = 0 // Tracks where the last pixel is drawn in the overall
|
|
14
|
+
|
|
13
15
|
private var lastMaxBound = 0 // Tracks where the last pixel is drawn in the visible window
|
|
14
16
|
private var lastMinBound = 0 // Tracks where first pixel is drawn in the visible window
|
|
15
17
|
|
|
@@ -19,6 +21,7 @@ class AutoLayoutShadow {
|
|
|
19
21
|
var maxBound = 0
|
|
20
22
|
var minBound = Int.MAX_VALUE
|
|
21
23
|
var maxBoundNeighbour = 0
|
|
24
|
+
lastMaxBoundOverall = 0
|
|
22
25
|
for (i in 0 until sortedItems.size - 1) {
|
|
23
26
|
val cell = sortedItems[i]
|
|
24
27
|
val neighbour = sortedItems[i + 1]
|
|
@@ -65,6 +68,8 @@ class AutoLayoutShadow {
|
|
|
65
68
|
}
|
|
66
69
|
}
|
|
67
70
|
}
|
|
71
|
+
lastMaxBoundOverall = kotlin.math.max(lastMaxBoundOverall, if (horizontal) cell.right else cell.bottom)
|
|
72
|
+
lastMaxBoundOverall = kotlin.math.max(lastMaxBoundOverall, if (horizontal) neighbour.right else neighbour.bottom)
|
|
68
73
|
}
|
|
69
74
|
lastMaxBound = maxBoundNeighbour
|
|
70
75
|
lastMinBound = minBound
|
|
@@ -3,7 +3,11 @@ package com.shopify.reactnative.flash_list
|
|
|
3
3
|
import android.content.Context
|
|
4
4
|
import android.graphics.Canvas
|
|
5
5
|
import android.util.DisplayMetrics
|
|
6
|
+
import android.util.Log
|
|
6
7
|
import android.view.View
|
|
8
|
+
import android.view.ViewGroup
|
|
9
|
+
import android.widget.HorizontalScrollView
|
|
10
|
+
import android.widget.ScrollView
|
|
7
11
|
import com.facebook.react.bridge.Arguments
|
|
8
12
|
import com.facebook.react.bridge.ReactContext
|
|
9
13
|
import com.facebook.react.bridge.WritableMap
|
|
@@ -24,19 +28,19 @@ class AutoLayoutView(context: Context) : ReactViewGroup(context) {
|
|
|
24
28
|
* can still cause views to overlap. Therefore, it makes sense to override draw to do correction. */
|
|
25
29
|
override fun dispatchDraw(canvas: Canvas?) {
|
|
26
30
|
fixLayout()
|
|
31
|
+
fixFooter()
|
|
27
32
|
super.dispatchDraw(canvas)
|
|
28
33
|
|
|
29
|
-
|
|
34
|
+
val parentScrollView = getParentScrollView()
|
|
35
|
+
if (enableInstrumentation && parentScrollView != null) {
|
|
30
36
|
/** Since we need to call this method with scrollOffset on the UI thread and not with the one react has we're querying parent's parent
|
|
31
37
|
directly which will be a ScrollView. If it isn't reported values will be incorrect but the component will not break.
|
|
32
38
|
RecyclerListView is expected not to change the hierarchy of children. */
|
|
33
39
|
|
|
34
|
-
val scrollContainerSize = (
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
if (alShadow.horizontal) it.scrollX else it.scrollY
|
|
39
|
-
}
|
|
40
|
+
val scrollContainerSize = if (alShadow.horizontal) parentScrollView.width else parentScrollView.height
|
|
41
|
+
|
|
42
|
+
val scrollOffset = if (alShadow.horizontal) parentScrollView.scrollX else parentScrollView.scrollY
|
|
43
|
+
|
|
40
44
|
val startOffset = if (alShadow.horizontal) left else top
|
|
41
45
|
val endOffset = if (alShadow.horizontal) right else bottom
|
|
42
46
|
|
|
@@ -66,6 +70,73 @@ class AutoLayoutView(context: Context) : ReactViewGroup(context) {
|
|
|
66
70
|
}
|
|
67
71
|
}
|
|
68
72
|
|
|
73
|
+
/** Fixes footer position along with rest of the items */
|
|
74
|
+
private fun fixFooter() {
|
|
75
|
+
val parentScrollView = getParentScrollView()
|
|
76
|
+
if (disableAutoLayout || parentScrollView == null) {
|
|
77
|
+
return
|
|
78
|
+
}
|
|
79
|
+
val isAutoLayoutEndVisible = if (alShadow.horizontal) right <= parentScrollView.width else bottom <= parentScrollView.height
|
|
80
|
+
if (!isAutoLayoutEndVisible) {
|
|
81
|
+
return
|
|
82
|
+
}
|
|
83
|
+
val autoLayoutParent = parent as? View
|
|
84
|
+
val footer = getFooter();
|
|
85
|
+
val diff = getFooterDiff()
|
|
86
|
+
if (diff == 0 || footer == null || autoLayoutParent == null) {
|
|
87
|
+
return
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
if (alShadow.horizontal) {
|
|
91
|
+
footer.offsetLeftAndRight(diff)
|
|
92
|
+
right += diff
|
|
93
|
+
autoLayoutParent.right += diff
|
|
94
|
+
} else {
|
|
95
|
+
footer.offsetTopAndBottom(diff)
|
|
96
|
+
bottom += diff
|
|
97
|
+
autoLayoutParent.bottom += diff
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
private fun getFooterDiff(): Int {
|
|
102
|
+
if (childCount == 0) {
|
|
103
|
+
alShadow.lastMaxBoundOverall = 0
|
|
104
|
+
} else if (childCount == 1) {
|
|
105
|
+
val firstChild = getChildAt(0)
|
|
106
|
+
alShadow.lastMaxBoundOverall = if (alShadow.horizontal) {
|
|
107
|
+
firstChild.right
|
|
108
|
+
} else {
|
|
109
|
+
firstChild.bottom
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
val autoLayoutEnd = if (alShadow.horizontal) right - left else bottom - top
|
|
113
|
+
return alShadow.lastMaxBoundOverall - autoLayoutEnd
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
private fun getFooter(): View? {
|
|
117
|
+
return (parent as? ViewGroup)?.let {
|
|
118
|
+
for (i in 0 until it.childCount) {
|
|
119
|
+
val view = it.getChildAt(i)
|
|
120
|
+
if (view is CellContainer && view.index == -1) {
|
|
121
|
+
return@let view
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
return@let null
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
private fun getParentScrollView(): View? {
|
|
129
|
+
var autoLayoutParent = parent;
|
|
130
|
+
while (autoLayoutParent != null) {
|
|
131
|
+
if (autoLayoutParent is ScrollView || autoLayoutParent is HorizontalScrollView) {
|
|
132
|
+
return autoLayoutParent as View
|
|
133
|
+
}
|
|
134
|
+
autoLayoutParent = autoLayoutParent.parent;
|
|
135
|
+
}
|
|
136
|
+
return null
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
|
|
69
140
|
/** TODO: Check migration to Fabric */
|
|
70
141
|
private fun emitBlankAreaEvent() {
|
|
71
142
|
val event: WritableMap = Arguments.createMap()
|
package/dist/FlashList.d.ts
CHANGED
|
@@ -18,12 +18,12 @@ declare class FlashList<T> extends React.PureComponent<FlashListProps<T>, FlashL
|
|
|
18
18
|
private stickyContentContainerRef?;
|
|
19
19
|
private listFixedDimensionSize;
|
|
20
20
|
private transformStyle;
|
|
21
|
+
private transformStyleHorizontal;
|
|
21
22
|
private distanceFromWindow;
|
|
22
23
|
private contentStyle;
|
|
23
24
|
private loadStartTime;
|
|
24
25
|
private isListLoaded;
|
|
25
26
|
private windowCorrectionConfig;
|
|
26
|
-
private emptyObject;
|
|
27
27
|
private postLoadTimeoutId?;
|
|
28
28
|
private sizeWarningTimeoutId?;
|
|
29
29
|
private isEmptyList;
|
|
@@ -97,6 +97,7 @@ declare class FlashList<T> extends React.PureComponent<FlashListProps<T>, FlashL
|
|
|
97
97
|
animated?: boolean | null | undefined;
|
|
98
98
|
item: any;
|
|
99
99
|
viewPosition?: number | undefined;
|
|
100
|
+
viewOffset?: number | undefined;
|
|
100
101
|
}): void;
|
|
101
102
|
scrollToOffset(params: {
|
|
102
103
|
animated?: boolean | null | undefined;
|
package/dist/FlashList.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlashList.d.ts","sourceRoot":"","sources":["../src/FlashList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,EAEL,YAAY,EAEZ,gBAAgB,EAChB,qBAAqB,EAEtB,MAAM,kBAAkB,CAAC;AAM1B,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AAKxE,OAAO,EACL,cAAc,EAIf,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"FlashList.d.ts","sourceRoot":"","sources":["../src/FlashList.tsx"],"names":[],"mappings":"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"}
|
package/dist/FlashList.js
CHANGED
|
@@ -14,7 +14,7 @@ var ExceptionList_1 = tslib_1.__importDefault(require("./errors/ExceptionList"))
|
|
|
14
14
|
var Warnings_1 = tslib_1.__importDefault(require("./errors/Warnings"));
|
|
15
15
|
var ViewabilityManager_1 = tslib_1.__importDefault(require("./viewability/ViewabilityManager"));
|
|
16
16
|
var FlashListProps_1 = require("./FlashListProps");
|
|
17
|
-
var PlatformHelper_1 = require("./
|
|
17
|
+
var PlatformHelper_1 = require("./native/config/PlatformHelper");
|
|
18
18
|
var StickyHeaderContainer = sticky_1.default;
|
|
19
19
|
var FlashList = /** @class */ (function (_super) {
|
|
20
20
|
tslib_1.__extends(FlashList, _super);
|
|
@@ -24,6 +24,7 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
24
24
|
_this = _super.call(this, props) || this;
|
|
25
25
|
_this.listFixedDimensionSize = 0;
|
|
26
26
|
_this.transformStyle = { transform: [{ scaleY: -1 }] };
|
|
27
|
+
_this.transformStyleHorizontal = { transform: [{ scaleX: -1 }] };
|
|
27
28
|
_this.distanceFromWindow = 0;
|
|
28
29
|
_this.contentStyle = {};
|
|
29
30
|
_this.loadStartTime = 0;
|
|
@@ -37,7 +38,6 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
37
38
|
applyToItemScroll: true,
|
|
38
39
|
applyToInitialOffset: true,
|
|
39
40
|
};
|
|
40
|
-
_this.emptyObject = {};
|
|
41
41
|
_this.isEmptyList = false;
|
|
42
42
|
_this.onEndReached = function () {
|
|
43
43
|
var _a, _b;
|
|
@@ -99,12 +99,14 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
99
99
|
_this.windowCorrectionConfig.value.windowShift = -_this.distanceFromWindow;
|
|
100
100
|
};
|
|
101
101
|
_this.separator = function (index) {
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
102
|
+
// Make sure we have data and don't read out of bounds
|
|
103
|
+
if (_this.props.data === null ||
|
|
104
|
+
_this.props.data === undefined ||
|
|
105
|
+
index + 1 >= _this.props.data.length) {
|
|
106
106
|
return null;
|
|
107
107
|
}
|
|
108
|
+
var leadingItem = _this.props.data[index];
|
|
109
|
+
var trailingItem = _this.props.data[index + 1];
|
|
108
110
|
var props = {
|
|
109
111
|
leadingItem: leadingItem,
|
|
110
112
|
trailingItem: trailingItem,
|
|
@@ -123,8 +125,13 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
123
125
|
react_1.default.createElement(react_native_1.View, { style: [_this.props.ListHeaderComponentStyle, _this.getTransform()] }, _this.getValidComponent(_this.props.ListHeaderComponent))));
|
|
124
126
|
};
|
|
125
127
|
_this.footer = function () {
|
|
128
|
+
var _a;
|
|
129
|
+
/** The web version of CellContainer uses a div directly which doesn't compose styles the way a View does.
|
|
130
|
+
* We will skip using CellContainer on web to avoid this issue. `getFooterContainer` on web will
|
|
131
|
+
* return a View. */
|
|
132
|
+
var FooterContainer = (_a = (0, PlatformHelper_1.getFooterContainer)()) !== null && _a !== void 0 ? _a : CellContainer_1.default;
|
|
126
133
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
127
|
-
react_1.default.createElement(
|
|
134
|
+
react_1.default.createElement(FooterContainer, { index: -1, style: [_this.props.ListFooterComponentStyle, _this.getTransform()] }, _this.getValidComponent(_this.props.ListFooterComponent)),
|
|
128
135
|
react_1.default.createElement(react_native_1.View, { style: {
|
|
129
136
|
paddingBottom: _this.contentStyle.paddingBottom,
|
|
130
137
|
paddingRight: _this.contentStyle.paddingRight,
|
|
@@ -307,7 +314,7 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
307
314
|
};
|
|
308
315
|
};
|
|
309
316
|
// Using only grid layout provider as it can also act as a listview, sizeProvider is a function to support future overrides
|
|
310
|
-
FlashList.getLayoutProvider = function (numColumns,
|
|
317
|
+
FlashList.getLayoutProvider = function (numColumns, flashListProps) {
|
|
311
318
|
return new GridLayoutProviderWithProps_1.default(
|
|
312
319
|
// max span or, total columns
|
|
313
320
|
numColumns, function (index, props) {
|
|
@@ -325,7 +332,7 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
325
332
|
// estimated size of the item an given index
|
|
326
333
|
(_a = props.overrideItemLayout) === null || _a === void 0 ? void 0 : _a.call(props, mutableLayout, props.data[index], index, numColumns, props.extraData);
|
|
327
334
|
return mutableLayout === null || mutableLayout === void 0 ? void 0 : mutableLayout.size;
|
|
328
|
-
},
|
|
335
|
+
}, flashListProps);
|
|
329
336
|
};
|
|
330
337
|
FlashList.prototype.componentDidMount = function () {
|
|
331
338
|
var _a;
|
|
@@ -352,8 +359,7 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
352
359
|
? PlatformHelper_1.PlatformConfig.defaultDrawDistance
|
|
353
360
|
: drawDistance;
|
|
354
361
|
return (react_1.default.createElement(StickyHeaderContainer, { overrideRowRenderer: this.stickyOverrideRowRenderer, applyWindowCorrection: this.applyWindowCorrection, stickyHeaderIndices: stickyHeaderIndices, style: this.props.horizontal
|
|
355
|
-
? this.
|
|
356
|
-
: tslib_1.__assign({ flex: 1 }, this.getTransform()) },
|
|
362
|
+
? tslib_1.__assign({}, this.getTransform()) : tslib_1.__assign({ flex: 1 }, this.getTransform()) },
|
|
357
363
|
react_1.default.createElement(recyclerlistview_1.ProgressiveListView, tslib_1.__assign({}, restProps, { ref: this.recyclerRef, layoutProvider: this.state.layoutProvider, dataProvider: this.state.dataProvider, rowRenderer: this.emptyRowRenderer, canChangeSize: true, isHorizontal: Boolean(horizontal), scrollViewProps: tslib_1.__assign({ onScrollBeginDrag: this.onScrollBeginDrag, onLayout: this.handleSizeChange, refreshControl: this.props.refreshControl || this.getRefreshControl(),
|
|
358
364
|
// Min values are being used to suppress RLV's bounded exception
|
|
359
365
|
style: { minHeight: 1, minWidth: 1 }, contentContainerStyle: {
|
|
@@ -391,7 +397,10 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
391
397
|
}
|
|
392
398
|
};
|
|
393
399
|
FlashList.prototype.getTransform = function () {
|
|
394
|
-
|
|
400
|
+
var transformStyle = this.props.horizontal
|
|
401
|
+
? this.transformStyleHorizontal
|
|
402
|
+
: this.transformStyle;
|
|
403
|
+
return (this.props.inverted && transformStyle) || undefined;
|
|
395
404
|
};
|
|
396
405
|
FlashList.prototype.getContentContainerInfo = function () {
|
|
397
406
|
var _a = (this.props.contentContainerStyle || {}), paddingTop = _a.paddingTop, paddingRight = _a.paddingRight, paddingBottom = _a.paddingBottom, paddingLeft = _a.paddingLeft, padding = _a.padding, paddingVertical = _a.paddingVertical, paddingHorizontal = _a.paddingHorizontal, backgroundColor = _a.backgroundColor, rest = tslib_1.__rest(_a, ["paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "padding", "paddingVertical", "paddingHorizontal", "backgroundColor"]);
|
|
@@ -457,13 +466,25 @@ var FlashList = /** @class */ (function (_super) {
|
|
|
457
466
|
(_a = this.rlvRef) === null || _a === void 0 ? void 0 : _a.scrollToEnd(Boolean(params === null || params === void 0 ? void 0 : params.animated));
|
|
458
467
|
};
|
|
459
468
|
FlashList.prototype.scrollToIndex = function (params) {
|
|
460
|
-
var _a;
|
|
461
|
-
|
|
462
|
-
(
|
|
469
|
+
var _a, _b, _c, _d, _e;
|
|
470
|
+
var layout = (_a = this.rlvRef) === null || _a === void 0 ? void 0 : _a.getLayout(params.index);
|
|
471
|
+
var listSize = (_b = this.rlvRef) === null || _b === void 0 ? void 0 : _b.getRenderedSize();
|
|
472
|
+
if (layout && listSize) {
|
|
473
|
+
var itemOffset = this.props.horizontal ? layout.x : layout.y;
|
|
474
|
+
var fixedDimension = this.props.horizontal
|
|
475
|
+
? listSize.width
|
|
476
|
+
: listSize.height;
|
|
477
|
+
var itemSize = this.props.horizontal ? layout.width : layout.height;
|
|
478
|
+
var scrollOffset = Math.max(0, itemOffset - ((_c = params.viewPosition) !== null && _c !== void 0 ? _c : 0) * (fixedDimension - itemSize)) - ((_d = params.viewOffset) !== null && _d !== void 0 ? _d : 0);
|
|
479
|
+
(_e = this.rlvRef) === null || _e === void 0 ? void 0 : _e.scrollToOffset(scrollOffset, scrollOffset, Boolean(params.animated), true);
|
|
480
|
+
}
|
|
463
481
|
};
|
|
464
482
|
FlashList.prototype.scrollToItem = function (params) {
|
|
465
|
-
var _a;
|
|
466
|
-
(_a = this.
|
|
483
|
+
var _a, _b;
|
|
484
|
+
var index = (_b = (_a = this.props.data) === null || _a === void 0 ? void 0 : _a.indexOf(params.item)) !== null && _b !== void 0 ? _b : -1;
|
|
485
|
+
if (index >= 0) {
|
|
486
|
+
this.scrollToIndex(tslib_1.__assign(tslib_1.__assign({}, params), { index: index }));
|
|
487
|
+
}
|
|
467
488
|
};
|
|
468
489
|
FlashList.prototype.scrollToOffset = function (params) {
|
|
469
490
|
var _a;
|
package/dist/FlashList.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlashList.js","sourceRoot":"","sources":["../src/FlashList.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FlashList.js","sourceRoot":"","sources":["../src/FlashList.tsx"],"names":[],"mappings":";;;AAAA,wDAA0B;AAC1B,6CAOsB;AACtB,qDAO0B;AAC1B,2EAAgF;AAEhF,+FAAiE;AACjE,gGAAkE;AAClE,+DAA8D;AAC9D,sGAAwE;AACxE,6EAA+C;AAC/C,iFAAmD;AACnD,uEAA4C;AAC5C,gGAAkE;AAClE,mDAK0B;AAC1B,iEAKwC;AAKxC,IAAM,qBAAqB,GACzB,gBAAoD,CAAC;AAevD;IAA2B,qCAG1B;IAiCC,mBAAY,KAAwB;QAApC,iBAiBC;;gBAhBC,kBAAM,KAAK,CAAC;QA/BN,4BAAsB,GAAG,CAAC,CAAC;QAC3B,oBAAc,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACjD,8BAAwB,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC3D,wBAAkB,GAAG,CAAC,CAAC;QACvB,kBAAY,GAAiB,EAAE,CAAC;QAChC,mBAAa,GAAG,CAAC,CAAC;QAClB,kBAAY,GAAG,KAAK,CAAC;QACrB,4BAAsB,GAA2B;YACvD,KAAK,EAAE;gBACL,WAAW,EAAE,CAAC;gBACd,eAAe,EAAE,CAAC;gBAClB,aAAa,EAAE,CAAC;aACjB;YACD,iBAAiB,EAAE,IAAI;YACvB,oBAAoB,EAAE,IAAI;SAC3B,CAAC;QAKM,iBAAW,GAAG,KAAK,CAAC;QA2JpB,kBAAY,GAAG;;YACrB,MAAA,MAAA,KAAI,CAAC,KAAK,EAAC,YAAY,kDAAI,CAAC;QAC9B,CAAC,CAAC;QAEM,uBAAiB,GAAG;YAC1B,IAAI,KAAI,CAAC,KAAK,CAAC,SAAS,EAAE;gBACxB,OAAO,CACL,8BAAC,6BAAc,IACb,UAAU,EAAE,OAAO,CAAC,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAC1C,kBAAkB,EAAE,KAAI,CAAC,KAAK,CAAC,kBAAkB,EACjD,SAAS,EAAE,KAAI,CAAC,KAAK,CAAC,SAAS,GAC/B,CACH,CAAC;aACH;QACH,CAAC,CAAC;QAiHM,uBAAiB,GAAG,UAC1B,KAA8C;;YAE9C,KAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,MAAA,MAAA,KAAI,CAAC,KAAK,EAAC,iBAAiB,mDAAG,KAAK,CAAC,CAAC;QACxC,CAAC,CAAC;QAEM,cAAQ,GAAG,UAAC,KAA8C;;YAChE,KAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,KAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE,CAAC;YAC9C,MAAA,MAAA,KAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC;QA6BM,sBAAgB,GAAG,UAAC,KAAwB;;YAClD,KAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAM,OAAO,GAAG,KAAI,CAAC,KAAK,CAAC,UAAU;gBACnC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM;gBACjC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;YACnC,IAAM,OAAO,GAAG,KAAI,CAAC,sBAAsB,CAAC;YAC5C,KAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC;YAEtC,qEAAqE;YACrE,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,KAAK,OAAO,EAAE;gBACtC,MAAA,KAAI,CAAC,MAAM,0CAAE,aAAa,EAAE,CAAC;aAC9B;YACD,IAAI,KAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACvB,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC;QAEM,eAAS,GAAG,UAAC,KAAa,EAAE,QAA2B;YAC7D,KAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,CACL;gBACE,8BAAC,2CAAoB,IACnB,OAAO,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,KAAI,CAAC,WAAW,EAChD,YAAY,EAAE,KAAI,CAAC,KAAK,CAAC,qBAAqB,EAC9C,UAAU,EAAE,KAAI,CAAC,KAAK,CAAC,UAAU,EACjC,MAAM,EAAE,KAAI,CAAC,KAAK,CAAC,mBAAmB,EACtC,SAAS,EAAE,KAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,WAAW,EAAE,KAAI,CAAC,KAAK,CAAC,wBAAwB,EAChD,QAAQ,EAAE,KAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,QAAQ,EAAE,KAAI,CAAC,MAAM,GACrB;gBACF,8BAAC,wBAAc,uBACT,KAAK,IACT,gBAAgB,EAAE,KAAI,CAAC,KAAK,CAAC,WAAW,EACxC,QAAQ,EAAE,KAAI,CAAC,wBAAwB,EACvC,iBAAiB,EAAE,KAAI,CAAC,KAAK,CAAC,iBAAiB,KAE9C,QAAQ,CACM;gBAChB,KAAI,CAAC,WAAW;oBACf,CAAC,CAAC,KAAI,CAAC,iBAAiB,CAAC,KAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;oBACvD,CAAC,CAAC,IAAI;gBACR,8BAAC,2CAAoB,IACnB,OAAO,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,KAAI,CAAC,WAAW,EAChD,YAAY,EAAE,KAAI,CAAC,KAAK,CAAC,qBAAqB,EAC9C,UAAU,EAAE,KAAI,CAAC,KAAK,CAAC,UAAU,EACjC,MAAM,EAAE,KAAI,CAAC,KAAK,CAAC,mBAAmB,EACtC,SAAS,EAAE,KAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,WAAW,EAAE,KAAI,CAAC,KAAK,CAAC,wBAAwB,EAChD,QAAQ,EAAE,KAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,QAAQ,EAAE,KAAI,CAAC,MAAM,GACrB;gBACD,KAAI,CAAC,gCAAgC,EAAE,CACvC,CACJ,CAAC;QACJ,CAAC,CAAC;QAEM,mBAAa,GAAG,UAAC,KAAU,EAAE,WAAgB;;YACnD,IAAM,qBAAqB,GACzB,MAAA,KAAI,CAAC,KAAK,CAAC,qBAAqB,mCAAI,uBAAa,CAAC;YACpD,OAAO,CACL,8BAAC,qBAAqB,uBAChB,KAAK,IACT,KAAK,0EACA,KAAK,CAAC,KAAK,KACd,aAAa,EAAE,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EACvD,UAAU,EAAE,SAAS,KAClB,KAAI,CAAC,YAAY,EAAE,GACnB,IAAA,+CAA8B,EAAC,KAAI,CAAC,KAAK,CAAC,QAAU,EAAE,WAAW,CAAC,GAEvE,KAAK,EAAE,WAAW,CAAC,KAAK;gBAExB,8BAAC,2CAAoB,IACnB,aAAa,EAAE,WAAW,CAAC,aAAa,EACxC,gBAAgB,EAAE,WAAW,CAAC,gBAAgB,EAC9C,IAAI,EAAE,WAAW,CAAC,IAAI,EACtB,GAAG,EAAE,WAAW,CAAC,KAAK,EACtB,QAAQ,EAAE,KAAI,CAAC,qBAAqB,GACpC,CACoB,CACzB,CAAC;QACJ,CAAC,CAAC;QAEM,8BAAwB,GAAG,UAAC,KAAwB;YAC1D,KAAI,CAAC,kBAAkB,GAAG,KAAI,CAAC,KAAK,CAAC,UAAU;gBAC7C,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/B,KAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,KAAI,CAAC,kBAAkB,CAAC;QAC3E,CAAC,CAAC;QAiDM,eAAS,GAAG,UAAC,KAAa;YAChC,sDAAsD;YACtD,IACE,KAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI;gBACxB,KAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;gBAC7B,KAAK,GAAG,CAAC,IAAI,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EACnC;gBACA,OAAO,IAAI,CAAC;aACb;YAED,IAAM,WAAW,GAAG,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAM,YAAY,GAAG,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAEhD,IAAM,KAAK,GAAG;gBACZ,WAAW,aAAA;gBACX,YAAY,cAAA;gBACZ,+HAA+H;gBAC/H,6IAA6I;aAC9I,CAAC;YACF,IAAM,SAAS,GAAG,KAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;YACpD,OAAO,SAAS,IAAI,8BAAC,SAAS,uBAAK,KAAK,EAAI,CAAC;QAC/C,CAAC,CAAC;QAEM,YAAM,GAAG;YACf,OAAO,CACL;gBACE,8BAAC,mBAAI,IACH,KAAK,EAAE;wBACL,UAAU,EAAE,KAAI,CAAC,YAAY,CAAC,UAAU;wBACxC,WAAW,EAAE,KAAI,CAAC,YAAY,CAAC,WAAW;qBAC3C,GACD;gBAEF,8BAAC,mBAAI,IACH,KAAK,EAAE,CAAC,KAAI,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAI,CAAC,YAAY,EAAE,CAAC,IAEhE,KAAI,CAAC,iBAAiB,CAAC,KAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAClD,CACN,CACJ,CAAC;QACJ,CAAC,CAAC;QAEM,YAAM,GAAG;;YACf;;gCAEoB;YACpB,IAAM,eAAe,GAAG,MAAA,IAAA,mCAAkB,GAAE,mCAAI,uBAAa,CAAC;YAC9D,OAAO,CACL;gBACE,8BAAC,eAAe,IACd,KAAK,EAAE,CAAC,CAAC,EACT,KAAK,EAAE,CAAC,KAAI,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAI,CAAC,YAAY,EAAE,CAAC,IAEhE,KAAI,CAAC,iBAAiB,CAAC,KAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CACvC;gBAClB,8BAAC,mBAAI,IACH,KAAK,EAAE;wBACL,aAAa,EAAE,KAAI,CAAC,YAAY,CAAC,aAAa;wBAC9C,YAAY,EAAE,KAAI,CAAC,YAAY,CAAC,YAAY;qBAC7C,GACD,CACD,CACJ,CAAC;QACJ,CAAC,CAAC;QAEM,sCAAgC,GAAG;YACzC,OAAO,KAAI,CAAC,KAAK,CAAC,UAAU;gBAC1B,CAAC,KAAI,CAAC,KAAK,CAAC,sCAAsC;gBAClD,CAAC,KAAI,CAAC,YAAY;gBAClB,KAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CACxC,8BAAC,mBAAI,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,aAAa,EAAC,MAAM,IAC9C,KAAI,CAAC,oBAAoB,CACxB,IAAI,CAAC,GAAG,CAAC,KAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAClD,oCAAmB,CAAC,WAAW,CAChC,CACI,CACR,CAAC,CAAC,CAAC,IAAI,CAAC;QACX,CAAC,CAAC;QAaM,2BAAqB,GAAG,UAC9B,CAAM,EACN,EAAO,EACP,gBAAyC;;YAEzC,gBAAgB,CAAC,WAAW,GAAG,CAAC,KAAI,CAAC,kBAAkB,CAAC;YACxD,MAAA,KAAI,CAAC,yBAAyB,0CAAE,UAAU,CAAC,KAAI,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC,CAAC;QAEM,uBAAiB,GAAG,UAAC,KAAa;YACxC,OAAO,KAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,oCAAmB,CAAC,YAAY,CAAC,CAAC;QAC5E,CAAC,CAAC;QAEM,0BAAoB,GAAG,UAAC,KAAa,EAAE,MAAoB;;YACjE,wEAAwE;YACxE,OAAO,MAAA,MAAA,KAAI,CAAC,KAAK,EAAC,UAAU,mDAAG;gBAC7B,IAAI,EAAE,KAAI,CAAC,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC;gBAC7B,KAAK,OAAA;gBACL,MAAM,QAAA;gBACN,SAAS,EAAE,MAAA,KAAI,CAAC,KAAK,CAAC,SAAS,0CAAE,KAAK;aACvC,CAAgB,CAAC;QACpB,CAAC,CAAC;QAEF;;;;WAIG;QACK,sBAAgB,GAAG;YACzB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEM,2BAAqB,GAAG,UAAC,KAAa;YAC5C,OAAO,CACL;gBACE,8BAAC,mBAAI,IACH,KAAK,EAAE;wBACL,aAAa,EACX,KAAI,CAAC,KAAK,CAAC,UAAU,IAAI,KAAI,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC;4BAClD,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAC,KAAK;qBACZ,IAEA,KAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,oCAAmB,CAAC,IAAI,CAAC,CACtD;gBACN,KAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CACrB,CACJ,CAAC;QACJ,CAAC,CAAC;QAEM,iBAAW,GAAG,UAAC,GAAQ;YAC7B,KAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QACpB,CAAC,CAAC;QAEM,sBAAgB,GAAG,UAAC,GAAQ;YAClC,KAAI,CAAC,yBAAyB,GAAG,GAAG,CAAC;QACvC,CAAC,CAAC;QAEM,+BAAyB,GAAG,UAClC,CAAM,EACN,EAAO,EACP,KAAa,EACb,GAAQ;YAER,OAAO,CACL,8BAAC,2CAAoB,IACnB,GAAG,EAAE,KAAI,CAAC,gBAAgB,EAC1B,OAAO,EAAE,KAAI,CAAC,eAAe,EAC7B,GAAG,EAAE,KAAK,EACV,QAAQ,EAAE,KAAI,CAAC,iBAAiB,GAChC,CACH,CAAC;QACJ,CAAC,CAAC;QAOM,kBAAY,GAAG,UAAC,KAAa;YACnC,oIAAoI;YACpI,KAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAClD,KAAI,CAAC,wBAAwB,EAAE,CAAC;QAClC,CAAC,CAAC;QAEM,8BAAwB,GAAG;;YACjC,IAAI,CAAC,KAAI,CAAC,YAAY,EAAE;gBACtB,KAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAA,MAAA,KAAI,CAAC,KAAK,EAAC,MAAM,mDAAG;oBAClB,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAI,CAAC,aAAa;iBACjD,CAAC,CAAC;gBACH,KAAI,CAAC,cAAc,EAAE,CAAC;aACvB;QACH,CAAC,CAAC;QAEM,oBAAc,GAAG;YACvB,IAAI,KAAI,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,EAAE;gBAC9C,KAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC;oBACrC,IAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAChC,KAAI,CAAC,KAAK,CAAC,cAAc,CAAC,eAAe,CAC1C,CAAC;oBACF,OAAO,CAAC,IAAI,CACV,kBAAW,CAAC,+BAA+B,CAAC,OAAO,CACjD,OAAO,EACP,eAAe,CAAC,QAAQ,EAAE,CAC3B,CACF,CAAC;gBACJ,CAAC,EAAE,IAAI,CAAC,CAAC;aACV;YACD,KAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC;gBAClC,6IAA6I;gBAC7I,sIAAsI;gBACtI,IAAI,KAAI,CAAC,KAAK,CAAC,UAAU,EAAE;oBACzB,KAAI,CAAC,WAAW,EAAE,CAAC;iBACpB;YACH,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC,CAAC;QAEM,0BAAoB,GAAG;YAC7B,IAAI,KAAI,CAAC,iBAAiB,KAAK,SAAS,EAAE;gBACxC,YAAY,CAAC,KAAI,CAAC,iBAAiB,CAAC,CAAC;gBACrC,KAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;aACpC;QACH,CAAC,CAAC;QA6FF;;;WAGG;QACI,uBAAiB,GAAG;YACzB,KAAI,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,CAAC;QAC9C,CAAC,CAAC;QAvvBA,KAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,KAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAC3B,IAAI,KAAK,CAAC,UAAU,EAAE;gBACpB,KAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC;aAC9D;iBAAM;gBACL,KAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC;aAC7D;SACF;QACD,KAAI,CAAC,kBAAkB;YACrB,MAAA,KAAK,CAAC,wBAAwB,mCAAI,CAAC,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,sDAAsD;QACtD,KAAI,CAAC,KAAK,GAAG,SAAS,CAAC,sBAAsB,CAAC,KAAI,CAAC,CAAC;QACpD,KAAI,CAAC,kBAAkB,GAAG,IAAI,4BAAkB,CAAC,KAAI,CAAC,CAAC;QACvD,KAAI,CAAC,YAAY,GAAG,IAAA,gCAAe,GAAE,CAAC;;IACxC,CAAC;IAEO,iCAAa,GAArB;;QACE,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE;YACtE,MAAM,IAAI,qBAAW,CAAC,uBAAa,CAAC,qBAAqB,CAAC,CAAC;SAC5D;QACD,IACE,MAAM,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,mBAAmB,0CAAE,MAAM,CAAC,GAAG,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,UAAU,EACrB;YACA,MAAM,IAAI,qBAAW,CAAC,uBAAa,CAAC,iCAAiC,CAAC,CAAC;SACxE;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;YAC9D,MAAM,IAAI,qBAAW,CAAC,uBAAa,CAAC,kCAAkC,CAAC,CAAC;SACzE;QAED,wIAAwI;QACxI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAClD,OAAO,CAAC,IAAI,CAAC,kBAAW,CAAC,gBAAgB,CAAC,CAAC;SAC5C;QACD,IAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACxD,IAAI,gBAAgB,CAAC,eAAe,EAAE;YACpC,OAAO,CAAC,IAAI,CAAC,kBAAW,CAAC,gCAAgC,CAAC,CAAC;SAC5D;QACD,IAAI,gBAAgB,CAAC,cAAc,EAAE;YACnC,OAAO,CAAC,IAAI,CAAC,kBAAW,CAAC,2BAA2B,CAAC,CAAC;SACvD;IACH,CAAC;IAED,+DAA+D;IACxD,kCAAwB,GAA/B,UACE,SAA4B,EAC5B,SAA4B;;QAE5B,IAAM,QAAQ,wBAAQ,SAAS,CAAE,CAAC;QAClC,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU,EAAE;YACjD,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC;YAChD,QAAQ,CAAC,cAAc,GAAG,SAAS,CAAC,iBAAiB,CACnD,QAAQ,CAAC,UAAU,EACnB,SAAS,CACV,CAAC;SACH;QACD,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,EAAE;YACrC,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;YAC/B,QAAQ,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,aAAa,CAC1D,SAAS,CAAC,IAAa,CACxB,CAAC;YACF,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU,EAAE;gBACjD,QAAQ,CAAC,SAAS,wBAAQ,SAAS,CAAC,SAAS,CAAE,CAAC;aACjD;SACF;QACD,IAAI,SAAS,CAAC,SAAS,MAAK,MAAA,SAAS,CAAC,SAAS,0CAAE,KAAK,CAAA,EAAE;YACtD,QAAQ,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC;SACrD;QACD,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QAC3C,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC/C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEc,gCAAsB,GAArC,UACE,SAAuB;QAEvB,IAAI,WAAoD,CAAC;QACzD,IACE,SAAS,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI;YACrC,SAAS,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,EAC1C;YACA,WAAW,GAAG,UAAC,KAAK;gBAClB,+GAA+G;gBAC/G,mFAAmF;gBACnF,OAAA,SAAS,CAAC,KAAK,CAAC,YAAa,CAC3B,SAAS,CAAC,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,EAC5B,KAAK,CACN,CAAC,QAAQ,EAAE;YAHZ,CAGY,CAAC;SAChB;QACD,OAAO;YACL,IAAI,EAAE,IAAI;YACV,cAAc,EAAE,IAAM;YACtB,YAAY,EAAE,IAAI,+BAAY,CAAC,UAAC,EAAE,EAAE,EAAE;gBACpC,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,CAAC,EAAE,WAAW,CAAC;YACf,UAAU,EAAE,CAAC;SACd,CAAC;IACJ,CAAC;IAED,2HAA2H;IAC5G,2BAAiB,GAAhC,UACE,UAAkB,EAClB,cAAiC;QAEjC,OAAO,IAAI,qCAA2B;QACpC,6BAA6B;QAC7B,UAAU,EACV,UAAC,KAAK,EAAE,KAAK;;YACX,mCAAmC;YACnC,IAAM,IAAI,GAAG,MAAA,KAAK,CAAC,WAAW,sDAC5B,KAAK,CAAC,IAAM,CAAC,KAAK,CAAC,EACnB,KAAK,EACL,KAAK,CAAC,SAAS,CAChB,CAAC;YACF,OAAO,IAAI,IAAI,CAAC,CAAC;QACnB,CAAC,EACD,UAAC,KAAK,EAAE,KAAK,EAAE,aAAa;;YAC1B,gFAAgF;YAChF,MAAA,KAAK,CAAC,kBAAkB,sDACtB,aAAa,EACb,KAAK,CAAC,IAAM,CAAC,KAAK,CAAC,EACnB,KAAK,EACL,UAAU,EACV,KAAK,CAAC,SAAS,CAChB,CAAC;YACF,OAAO,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,mCAAI,CAAC,CAAC;QAClC,CAAC,EACD,UAAC,KAAK,EAAE,KAAK,EAAE,aAAa;;YAC1B,4CAA4C;YAC5C,MAAA,KAAK,CAAC,kBAAkB,sDACtB,aAAa,EACb,KAAK,CAAC,IAAM,CAAC,KAAK,CAAC,EACnB,KAAK,EACL,UAAU,EACV,KAAK,CAAC,SAAS,CAChB,CAAC;YACF,OAAO,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAC;QAC7B,CAAC,EACD,cAAc,CACf,CAAC;IACJ,CAAC;IAkBD,qCAAiB,GAAjB;;QACE,IAAI,CAAA,MAAA,IAAI,CAAC,KAAK,CAAC,IAAI,0CAAE,MAAM,MAAK,CAAC,EAAE;YACjC,IAAI,CAAC,wBAAwB,EAAE,CAAC;SACjC;IACH,CAAC;IAED,wCAAoB,GAApB;QACE,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE;YAC3C,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;SACzC;IACH,CAAC;IAED,0BAAM,GAAN;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC,KAAK,CAAC;QAEzD,IAAM,KAYF,IAAI,CAAC,KAAK,EAXZ,YAAY,kBAAA,EACZ,qBAAqB,2BAAA,EACrB,mBAAmB,yBAAA,EACnB,UAAU,gBAAA,EACV,qBAAqB,2BAAA,EACrB,iBAAiB,uBAAA,EACjB,kBAAkB,wBAAA,EAClB,KAAK,WAAA,EACL,qBAAqB,2BAAA,EACrB,qBAAqB,2BAAA,EAClB,SAAS,sBAXR,6MAYL,CAAa,CAAC;QAEf,0GAA0G;QAC1G,gEAAgE;QAChE,IAAM,aAAa,GACjB,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,IAAI,CAAC,kBAAkB,CAAC;YAClE,SAAS,CAAC;QACZ,IAAM,iBAAiB,GACrB,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,+BAAc,CAAC,mBAAmB;YACpC,CAAC,CAAC,YAAY,CAAC;QAEnB,OAAO,CACL,8BAAC,qBAAqB,IACpB,mBAAmB,EAAE,IAAI,CAAC,yBAAyB,EACnD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,EACjD,mBAAmB,EAAE,mBAAmB,EACxC,KAAK,EACH,IAAI,CAAC,KAAK,CAAC,UAAU;gBACnB,CAAC,sBAAM,IAAI,CAAC,YAAY,EAAE,EAC1B,CAAC,oBAAG,IAAI,EAAE,CAAC,IAAK,IAAI,CAAC,YAAY,EAAE,CAAE;YAGzC,8BAAC,sCAAmB,uBACd,SAAS,IACb,GAAG,EAAE,IAAI,CAAC,WAAW,EACrB,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EACzC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACrC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,aAAa,QACb,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,EACjC,eAAe,qBACb,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAC/B,cAAc,EACZ,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,iBAAiB,EAAE;oBAEvD,gEAAgE;oBAChE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EACpC,qBAAqB,EAAE;wBACrB,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,eAAe;wBAElD,6FAA6F;wBAC7F,SAAS,EAAE,CAAC;wBACZ,QAAQ,EAAE,CAAC;qBACZ,IACE,IAAI,CAAC,KAAK,CAAC,aAAa,GAE7B,8BAA8B,QAC9B,mBAAmB,EAAE,IAAI,CAAC,aAAa,EACvC,sBAAsB,EAAE,IAAI,CAAC,SAAS,EACtC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,6BAA6B,EAAE,qBAAqB,IAAI,SAAS,EACjE,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EACnC,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,CAAC,GAAG,iBAAiB,EACrC,sBAAsB,EAAE,iBAAiB,EACzC,eAAe,EAAE,iBAAiB,EAClC,kBAAkB,EAChB,CAAC,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,kBAAkB,CAAC;oBAC9D,SAAS,EAEX,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,uBAAuB,EACrB,IAAI,CAAC,kBAAkB,CAAC,4BAA4B;oBAClD,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,uBAAuB;oBACjD,CAAC,CAAC,SAAS,EAEf,sBAAsB,EAAE,IAAI,CAAC,gCAAgC,EAAE,EAC/D,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,4BAA4B,QAC5B,kBAAkB,EAChB,qBAAoE,IAEtE,CACoB,CACzB,CAAC;IACJ,CAAC;IAeO,oDAAgC,GAAxC;QACE,4IAA4I;QAC5I,iFAAiF;QACjF,8HAA8H;QAC9H,IAAI,IAAI,CAAC,8BAA8B,EAAE,EAAE;YACzC,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,GAAG,KAAK,CAAC;SAC1D;aAAM;YACL,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,GAAG,IAAI,CAAC;SACzD;QACD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC;QACzE,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAEO,kDAA8B,GAAtC;;QACE,OAAO,CACL,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,kBAAkB,mCAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,UAAU,CACtB,CAAC;IACJ,CAAC;IAEO,oCAAgB,GAAxB,UAAyB,KAAwB;QACzC,IAAA,KAAoB,KAAK,CAAC,WAAW,CAAC,MAAM,EAA1C,MAAM,YAAA,EAAE,KAAK,WAA6B,CAAC;QACnD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YACrD,OAAO,CAAC,IAAI,CAAC,kBAAW,CAAC,oBAAoB,CAAC,CAAC;SAChD;IACH,CAAC;IA4FO,gCAAY,GAApB;QACE,IAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU;YAC1C,CAAC,CAAC,IAAI,CAAC,wBAAwB;YAC/B,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,cAAc,CAAC,IAAI,SAAS,CAAC;IAC9D,CAAC;IAEO,2CAAuB,GAA/B;QACE,IAAM,KAUF,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,IAAI,EAAE,CAAc,EATvD,UAAU,gBAAA,EACV,YAAY,kBAAA,EACZ,aAAa,mBAAA,EACb,WAAW,iBAAA,EACX,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,iBAAiB,uBAAA,EACjB,eAAe,qBAAA,EACZ,IAAI,sBATH,oIAUL,CAAwD,CAAC;QAC1D,IAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;YACzB,IAAM,cAAc,GAClB,OAAO,IAAI,eAAe,IAAI,UAAU,IAAI,aAAa,CAAC;YAC5D,OAAO;gBACL,KAAK,EAAE;oBACL,WAAW,EAAE,WAAW,IAAI,iBAAiB,IAAI,OAAO,IAAI,CAAC;oBAC7D,YAAY,EAAE,YAAY,IAAI,iBAAiB,IAAI,OAAO,IAAI,CAAC;oBAC/D,eAAe,iBAAA;iBAChB;gBACD,eAAe,iBAAA;gBACf,cAAc,gBAAA;aACf,CAAC;SACH;aAAM;YACL,IAAM,cAAc,GAClB,OAAO,IAAI,iBAAiB,IAAI,WAAW,IAAI,YAAY,CAAC;YAC9D,OAAO;gBACL,KAAK,EAAE;oBACL,UAAU,EAAE,UAAU,IAAI,eAAe,IAAI,OAAO,IAAI,CAAC;oBACzD,aAAa,EAAE,aAAa,IAAI,eAAe,IAAI,OAAO,IAAI,CAAC;oBAC/D,eAAe,iBAAA;iBAChB;gBACD,eAAe,iBAAA;gBACf,cAAc,gBAAA;aACf,CAAC;SACH;IACH,CAAC;IAiFO,qCAAiB,GAAzB,UACE,SAAsE;QAEtE,IAAM,eAAe,GAAG,SAAS,CAAC;QAClC,OAAO,CACL,CAAC,eAAK,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,eAAe,CAAC;YAC1D,CAAC,eAAe,IAAI,8BAAC,eAAe,OAAG,CAAC;YACxC,IAAI,CACL,CAAC;IACJ,CAAC;IA4ED,sBAAY,sCAAe;aAA3B;;YACE,IAAM,aAAa,GAAG,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,sBAAsB,EAAE,KAAI,CAAC,CAAC;YACjE,OAAO,aAAa,IAAI,IAAI,CAAC,kBAAkB,CAAC;QAClD,CAAC;;;OAAA;IAgDD;;;;;OAKG;IACI,mDAA+B,GAAtC;;QACE,IACE,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI;YAChC,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,EACrC;YACA,OAAO,CAAC,IAAI,CAAC,kBAAW,CAAC,mBAAmB,CAAC,CAAC;SAC/C;aAAM;YACL,MAAA,IAAI,CAAC,MAAM,0CAAE,+BAA+B,EAAE,CAAC;SAChD;IACH,CAAC;IAEM,+BAAW,GAAlB,UAAmB,MAAkD;;QACnE,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAC,OAAO,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC,CAAC,CAAC;IACtD,CAAC;IAEM,iCAAa,GAApB,UAAqB,MAKpB;;QACC,IAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpD,IAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,eAAe,EAAE,CAAC;QAEhD,IAAI,MAAM,IAAI,QAAQ,EAAE;YACtB,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/D,IAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU;gBAC1C,CAAC,CAAC,QAAQ,CAAC,KAAK;gBAChB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YACpB,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YACtE,IAAM,YAAY,GAChB,IAAI,CAAC,GAAG,CACN,CAAC,EACD,UAAU,GAAG,CAAC,MAAA,MAAM,CAAC,YAAY,mCAAI,CAAC,CAAC,GAAG,CAAC,cAAc,GAAG,QAAQ,CAAC,CACtE,GAAG,CAAC,MAAA,MAAM,CAAC,UAAU,mCAAI,CAAC,CAAC,CAAC;YAC/B,MAAA,IAAI,CAAC,MAAM,0CAAE,cAAc,CACzB,YAAY,EACZ,YAAY,EACZ,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EACxB,IAAI,CACL,CAAC;SACH;IACH,CAAC;IAEM,gCAAY,GAAnB,UAAoB,MAKnB;;QACC,IAAM,KAAK,GAAG,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,IAAI,0CAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,KAAK,IAAI,CAAC,EAAE;YACd,IAAI,CAAC,aAAa,uCAAM,MAAM,KAAE,KAAK,OAAA,IAAG,CAAC;SAC1C;IACH,CAAC;IAEM,kCAAc,GAArB,UAAsB,MAGrB;;QACC,IAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,IAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QACpD,MAAA,IAAI,CAAC,MAAM,0CAAE,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9D,CAAC;IAEM,qCAAiB,GAAxB;;QACE,OAAO,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,iBAAiB,kDAAI,KAAI,IAAI,CAAC;IACpD,CAAC;IAOD,sBAAW,8CAAuB;QALlC;;;WAGG;QACH,yDAAyD;aACzD;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;;;OAAA;IAKD,sBAAW,sCAAe;QAH1B;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACjC,CAAC;;;OAAA;IAtvBM,sBAAY,GAAG;QACpB,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,CAAC;KACd,CAAC;IA4vBJ,gBAAC;CAAA,AA9xBD,CAA2B,eAAK,CAAC,aAAa,GA8xB7C;AAED,kBAAe,SAAS,CAAC"}
|
|
@@ -10,6 +10,10 @@ var AutoLayoutView_1 = tslib_1.__importDefault(require("../native/auto-layout/Au
|
|
|
10
10
|
var CellContainer_1 = tslib_1.__importDefault(require("../native/cell-container/CellContainer"));
|
|
11
11
|
var FlashListProps_1 = require("../FlashListProps");
|
|
12
12
|
var mountFlashList_1 = require("./helpers/mountFlashList");
|
|
13
|
+
jest.mock("../native/cell-container/CellContainer", function () {
|
|
14
|
+
return jest.requireActual("../native/cell-container/CellContainer.ios.ts")
|
|
15
|
+
.default;
|
|
16
|
+
});
|
|
13
17
|
describe("FlashList", function () {
|
|
14
18
|
beforeEach(function () {
|
|
15
19
|
jest.clearAllMocks();
|
|
@@ -534,7 +538,9 @@ describe("FlashList", function () {
|
|
|
534
538
|
countMounts = 0;
|
|
535
539
|
// items widths before layout manager change should be 400
|
|
536
540
|
flashList.findAll(CellContainer_1.default).forEach(function (cell) {
|
|
537
|
-
|
|
541
|
+
if (cell.props.index !== -1) {
|
|
542
|
+
expect(cell.instance.props.style.width).toBe(400);
|
|
543
|
+
}
|
|
538
544
|
});
|
|
539
545
|
// This will cause a layout manager change
|
|
540
546
|
(_a = flashList.find(react_native_1.ScrollView)) === null || _a === void 0 ? void 0 : _a.trigger("onLayout", {
|
|
@@ -544,7 +550,9 @@ describe("FlashList", function () {
|
|
|
544
550
|
expect(countMounts).toBe(currentComponentCount);
|
|
545
551
|
// items widths after layout manager change should be 900
|
|
546
552
|
flashList.findAll(CellContainer_1.default).forEach(function (cell) {
|
|
547
|
-
|
|
553
|
+
if (cell.props.index !== -1) {
|
|
554
|
+
expect(cell.instance.props.style.width).toBe(900);
|
|
555
|
+
}
|
|
548
556
|
});
|
|
549
557
|
flashList.unmount();
|
|
550
558
|
});
|
|
@@ -674,5 +682,57 @@ describe("FlashList", function () {
|
|
|
674
682
|
flashList.setProps({ disableAutoLayout: true });
|
|
675
683
|
expect((_b = flashList.find(AutoLayoutView_1.default)) === null || _b === void 0 ? void 0 : _b.props.disableAutoLayout).toBe(true);
|
|
676
684
|
});
|
|
685
|
+
it("computes correct scrollTo offset when view position is specified", function () {
|
|
686
|
+
var _a;
|
|
687
|
+
var flashList = (0, mountFlashList_1.mountFlashList)({
|
|
688
|
+
data: new Array(40).fill(1).map(function (_, index) {
|
|
689
|
+
return index.toString();
|
|
690
|
+
}),
|
|
691
|
+
});
|
|
692
|
+
var plv = (_a = flashList.find(recyclerlistview_1.ProgressiveListView)) === null || _a === void 0 ? void 0 : _a.instance;
|
|
693
|
+
var scrollToOffset = jest.spyOn(plv, "scrollToOffset");
|
|
694
|
+
flashList.instance.scrollToIndex({ index: 10, viewPosition: 0.5 });
|
|
695
|
+
// Each item is 200px in height and to position it in the middle of the window (900 x 400), its offset needs to be
|
|
696
|
+
// reduced by 350px. That gives us 1650. Other test cases follow the same logic.
|
|
697
|
+
expect(scrollToOffset).toBeCalledWith(1650, 1650, false, true);
|
|
698
|
+
flashList.instance.scrollToItem({
|
|
699
|
+
item: "10",
|
|
700
|
+
viewPosition: 0.5,
|
|
701
|
+
});
|
|
702
|
+
expect(scrollToOffset).toBeCalledWith(1650, 1650, false, true);
|
|
703
|
+
flashList.setProps({ horizontal: true });
|
|
704
|
+
flashList.instance.scrollToItem({
|
|
705
|
+
item: "10",
|
|
706
|
+
viewPosition: 0.5,
|
|
707
|
+
});
|
|
708
|
+
expect(scrollToOffset).toBeCalledWith(1900, 1900, false, true);
|
|
709
|
+
flashList.unmount();
|
|
710
|
+
});
|
|
711
|
+
it("computes correct scrollTo offset when view offset is specified", function () {
|
|
712
|
+
var _a;
|
|
713
|
+
var flashList = (0, mountFlashList_1.mountFlashList)({
|
|
714
|
+
data: new Array(40).fill(1).map(function (_, index) {
|
|
715
|
+
return index.toString();
|
|
716
|
+
}),
|
|
717
|
+
});
|
|
718
|
+
var plv = (_a = flashList.find(recyclerlistview_1.ProgressiveListView)) === null || _a === void 0 ? void 0 : _a.instance;
|
|
719
|
+
var scrollToOffset = jest.spyOn(plv, "scrollToOffset");
|
|
720
|
+
// Each item is 200px in height and to position it in the middle of the window (900 x 400), it's offset needs to be
|
|
721
|
+
// reduced by 350px + 100px offset. That gives us 1550. Other test cases follow the same logic.
|
|
722
|
+
flashList.instance.scrollToIndex({
|
|
723
|
+
index: 10,
|
|
724
|
+
viewPosition: 0.5,
|
|
725
|
+
viewOffset: 100,
|
|
726
|
+
});
|
|
727
|
+
expect(scrollToOffset).toBeCalledWith(1550, 1550, false, true);
|
|
728
|
+
flashList.setProps({ horizontal: true });
|
|
729
|
+
flashList.instance.scrollToItem({
|
|
730
|
+
item: "10",
|
|
731
|
+
viewPosition: 0.5,
|
|
732
|
+
viewOffset: 100,
|
|
733
|
+
});
|
|
734
|
+
expect(scrollToOffset).toBeCalledWith(1800, 1800, false, true);
|
|
735
|
+
flashList.unmount();
|
|
736
|
+
});
|
|
677
737
|
});
|
|
678
738
|
//# sourceMappingURL=FlashList.test.js.map
|