@dreamstack-us/section-flow 0.0.1 → 0.0.3
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/README.md +4 -10
- package/dist/index.cjs +4 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -11,29 +11,19 @@ High-performance, section-first list library for React Native. Drop-in replaceme
|
|
|
11
11
|
- **Type-Safe**: Full TypeScript support with proper generics
|
|
12
12
|
- **Sticky Headers**: Headers that actually work
|
|
13
13
|
- **Collapsible Sections**: Built-in, no external state needed
|
|
14
|
-
- **Chat UI Ready**: `alignItemsAtEnd`, `maintainScrollAtEnd` support
|
|
15
14
|
|
|
16
15
|
## Installation
|
|
17
16
|
|
|
18
17
|
```bash
|
|
19
|
-
# Using the short name
|
|
20
18
|
npm install sectionflow
|
|
21
19
|
# or
|
|
22
|
-
bun add sectionflow
|
|
23
|
-
|
|
24
|
-
# Using the scoped name
|
|
25
20
|
npm install @dreamstack-us/section-flow
|
|
26
|
-
# or
|
|
27
|
-
bun add @dreamstack-us/section-flow
|
|
28
21
|
```
|
|
29
22
|
|
|
30
|
-
Both packages are identical - use whichever you prefer.
|
|
31
|
-
|
|
32
23
|
## Usage
|
|
33
24
|
|
|
34
25
|
```tsx
|
|
35
26
|
import { SectionFlow } from 'sectionflow';
|
|
36
|
-
// or: import { SectionFlow } from '@dreamstack-us/section-flow';
|
|
37
27
|
|
|
38
28
|
const sections = [
|
|
39
29
|
{ key: 'a', title: 'A', data: ['Alice', 'Adam'] },
|
|
@@ -49,6 +39,10 @@ const sections = [
|
|
|
49
39
|
/>
|
|
50
40
|
```
|
|
51
41
|
|
|
42
|
+
## Documentation
|
|
43
|
+
|
|
44
|
+
Full documentation available at: https://dreamstack-us.github.io/SectionFlow/
|
|
45
|
+
|
|
52
46
|
## License
|
|
53
47
|
|
|
54
48
|
MIT © DreamStack
|
package/dist/index.cjs
CHANGED
|
@@ -1546,7 +1546,8 @@ const styles$2 = react_native.StyleSheet.create({ shadow: {
|
|
|
1546
1546
|
height: 2
|
|
1547
1547
|
},
|
|
1548
1548
|
shadowOpacity: .1,
|
|
1549
|
-
shadowRadius: 4
|
|
1549
|
+
shadowRadius: 4,
|
|
1550
|
+
backgroundColor: "#fff"
|
|
1550
1551
|
} });
|
|
1551
1552
|
const StickyHeaderContainer = (0, react.memo)(StickyHeaderContainerComponent);
|
|
1552
1553
|
function AnimatedStickyHeaderContainerComponent({ stickySection, animatedTranslateY, sections, renderSectionHeader, horizontal = false, style }) {
|
|
@@ -1592,7 +1593,7 @@ const AnimatedStickyHeaderContainer = (0, react.memo)(AnimatedStickyHeaderContai
|
|
|
1592
1593
|
* - Absolute positioning with computed layouts
|
|
1593
1594
|
*/
|
|
1594
1595
|
function SectionFlowInner(props, ref) {
|
|
1595
|
-
const { sections, renderItem, renderSectionHeader, renderSectionFooter, keyExtractor, getItemType, estimatedItemSize = DEFAULT_ESTIMATED_ITEM_SIZE, estimatedSectionHeaderSize = DEFAULT_ESTIMATED_HEADER_SIZE, estimatedSectionFooterSize = 0, horizontal = false, stickySectionHeadersEnabled = true,
|
|
1596
|
+
const { sections, renderItem, renderSectionHeader, renderSectionFooter, keyExtractor, getItemType, estimatedItemSize = DEFAULT_ESTIMATED_ITEM_SIZE, estimatedSectionHeaderSize = DEFAULT_ESTIMATED_HEADER_SIZE, estimatedSectionFooterSize = 0, horizontal = false, stickySectionHeadersEnabled = true, collapsible = false, defaultCollapsed = [], onSectionToggle, maxItemsInRecyclePool, drawDistance = DEFAULT_DRAW_DISTANCE, viewabilityConfig, onViewableItemsChanged, onEndReached, onEndReachedThreshold, style, contentContainerStyle, ListHeaderComponent, ListFooterComponent, ListEmptyComponent, refreshing, onRefresh, extraData, debug = false,...scrollViewProps } = props;
|
|
1596
1597
|
const scrollViewRef = (0, react.useRef)(null);
|
|
1597
1598
|
const [viewportSize, setViewportSize] = (0, react.useState)({
|
|
1598
1599
|
width: 0,
|
|
@@ -1854,8 +1855,7 @@ function SectionFlowInner(props, ref) {
|
|
|
1854
1855
|
translateY: stickyHeaderState.translateY,
|
|
1855
1856
|
sections,
|
|
1856
1857
|
renderSectionHeader,
|
|
1857
|
-
horizontal
|
|
1858
|
-
style: stickyHeaderStyle
|
|
1858
|
+
horizontal
|
|
1859
1859
|
}),
|
|
1860
1860
|
debug && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_native.View, {
|
|
1861
1861
|
style: styles$1.debugOverlay,
|