@legendapp/list 3.0.0-beta.2 → 3.0.0-beta.21

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.
Files changed (47) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +1 -0
  3. package/animated.native.d.mts +9 -0
  4. package/animated.native.d.ts +9 -0
  5. package/animated.native.js +9 -0
  6. package/animated.native.mjs +7 -0
  7. package/index.d.mts +781 -10
  8. package/index.d.ts +781 -10
  9. package/index.js +973 -530
  10. package/index.mjs +973 -532
  11. package/index.native.d.mts +781 -10
  12. package/index.native.d.ts +781 -10
  13. package/index.native.js +981 -494
  14. package/index.native.mjs +980 -495
  15. package/keyboard-controller.native.d.mts +12 -0
  16. package/keyboard-controller.native.d.ts +12 -0
  17. package/keyboard-controller.native.js +69 -0
  18. package/keyboard-controller.native.mjs +48 -0
  19. package/keyboard.d.mts +5 -2
  20. package/keyboard.d.ts +5 -2
  21. package/keyboard.js +232 -28
  22. package/keyboard.mjs +235 -31
  23. package/keyboard.native.d.mts +16 -0
  24. package/keyboard.native.d.ts +16 -0
  25. package/keyboard.native.js +318 -0
  26. package/keyboard.native.mjs +296 -0
  27. package/package.json +1 -1
  28. package/reanimated.d.mts +3 -3
  29. package/reanimated.d.ts +3 -3
  30. package/reanimated.js +15 -4
  31. package/reanimated.mjs +14 -3
  32. package/reanimated.native.d.mts +18 -0
  33. package/reanimated.native.d.ts +18 -0
  34. package/reanimated.native.js +89 -0
  35. package/reanimated.native.mjs +65 -0
  36. package/section-list.d.mts +1 -2
  37. package/section-list.d.ts +1 -2
  38. package/section-list.js +36 -3670
  39. package/section-list.mjs +34 -3669
  40. package/section-list.native.d.mts +1 -2
  41. package/section-list.native.d.ts +1 -2
  42. package/section-list.native.js +36 -3449
  43. package/section-list.native.mjs +33 -3447
  44. package/types-JPHClxiw.d.mts +0 -670
  45. package/types-JPHClxiw.d.ts +0 -670
  46. package/types-YNdphn_A.d.mts +0 -670
  47. package/types-YNdphn_A.d.ts +0 -670
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
3
3
  - Feat: Web support
4
4
  - Breaking: Some of the maintainVisibleContentPosition behavior for preventing jumping while scrolling is now core behavior, and the behavior for maintaining scroll position when adding data is controlled by the prop, which is now disabled by default.
5
5
 
6
+ ## 2.0.18
7
+ - Improvement: KeyboardAvoidingLegendList now supports KeyboardGestureArea with improved interactive behavior
8
+
9
+ ## 2.0.17
10
+ - Feat: Add stickyHeaderOffset property to control sticky header positioning
11
+ - Feat: Add sticky header backdrop component support
12
+ - Fix: Improve KeyboardAvoidingLegendList quality by using animated contentOffset y instead of reanimated scrollTo
13
+ - Fix: Initial scroll could sometimes be out of range beyond the ScrollView if some items are much larger than the estimated size
14
+ - Fix: Item layout updates now work correctly when container is the exact same size as previous item on old arch
15
+
16
+ ## 2.0.16
17
+ - Feat: Add KeyboardAvoidingLegendList component for better keyboard handling integration
18
+ - Fix: Stale containers are not being removed and overlap with new data when using getItemType #335
19
+ - Fix: Suppress keyExtractor warning when using lazy list mode #330
20
+
21
+ ## 2.0.15
22
+ - Fix: Container allocation for sticky headers could duplicate containers, causing rendering issues
23
+ - Fix: Sticky positioned components scrolling out of viewport after scrolling distance exceeded 5000
24
+
6
25
  ## 2.0.14
7
26
  - Feat: Add dataVersion prop to trigger re-render when mutating the data array in place
8
27
 
package/README.md CHANGED
@@ -27,6 +27,7 @@ Beyond standard `FlatList` capabilities:
27
27
  * `true`: Reuses item components for optimal performance. Be cautious if your item components contain local state, as it might be reused unexpectedly.
28
28
  * `false` (default): Creates new item components every time. Less performant but safer if items have complex internal state.
29
29
  * `maintainScrollAtEnd`: (boolean) If `true` and the user is scrolled near the bottom (within `maintainScrollAtEndThreshold * screen height`), the list automatically scrolls to the end when items are added or heights change. Useful for chat interfaces.
30
+ * `maintainVisibleContentPosition`: Keeps visible content steady during size/layout changes while scrolling up or when items resize above the viewport (default). Pass `true` or `{ data: true }` to also anchor during data updates; pass `false` to disable; pass `{ size: false }` to opt out of scroll-time stabilization.
30
31
  * `alignItemsAtEnd`: (boolean) Useful for chat UIs, content smaller than the View will be aligned to the bottom of the list.
31
32
 
32
33
  ---
@@ -0,0 +1,9 @@
1
+ import * as _legendapp_list from '@legendapp/list';
2
+ import * as React from 'react';
3
+ import { Animated } from 'react-native';
4
+
5
+ declare const AnimatedLegendList: Animated.AnimatedComponent<(<T>(props: _legendapp_list.LegendListProps<T> & React.RefAttributes<_legendapp_list.LegendListRef>) => React.ReactNode) & {
6
+ displayName?: string;
7
+ }>;
8
+
9
+ export { AnimatedLegendList };
@@ -0,0 +1,9 @@
1
+ import * as _legendapp_list from '@legendapp/list';
2
+ import * as React from 'react';
3
+ import { Animated } from 'react-native';
4
+
5
+ declare const AnimatedLegendList: Animated.AnimatedComponent<(<T>(props: _legendapp_list.LegendListProps<T> & React.RefAttributes<_legendapp_list.LegendListRef>) => React.ReactNode) & {
6
+ displayName?: string;
7
+ }>;
8
+
9
+ export { AnimatedLegendList };
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ var reactNative = require('react-native');
4
+ var list = require('@legendapp/list');
5
+
6
+ // src/integrations/animated.tsx
7
+ var AnimatedLegendList = reactNative.Animated.createAnimatedComponent(list.LegendList);
8
+
9
+ exports.AnimatedLegendList = AnimatedLegendList;
@@ -0,0 +1,7 @@
1
+ import { Animated } from 'react-native';
2
+ import { LegendList } from '@legendapp/list';
3
+
4
+ // src/integrations/animated.tsx
5
+ var AnimatedLegendList = Animated.createAnimatedComponent(LegendList);
6
+
7
+ export { AnimatedLegendList };