UNPKG

@scrolia/react-native

Version:
46 lines (42 loc) 1.59 kB
"use client"; const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.js'); const require_contexts_scrollcore = require('../../contexts/scrollcore.js'); const require_functions_props = require('../../functions/props.js'); const require_hooks_content_index = require('../../hooks/content/index.js'); const react_native = require_rolldown_runtime.__toESM(require("react-native")); const react = require_rolldown_runtime.__toESM(require("react")); const react_jsx_runtime = require_rolldown_runtime.__toESM(require("react/jsx-runtime")); /** * Horizontal list component. * * Use `ContentX` for generic content. */ const ListX = (props) => { const { options: { disabled, plugins }, x: { contentRef, contentType } } = require_contexts_scrollcore.useScrollCore(); const p = require_functions_props.getComponentProps({ name: "listX", props, plugins }); react.useImperativeHandle(p.ref, () => { return contentRef.current; }, [contentRef]); react.useEffect(() => { contentType.current = "flatlist"; }, [contentType]); const { onLayout, onContentSizeChange, onScroll } = require_hooks_content_index.useContentXHandler({ props: p }); return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_native.FlatList, { ...p, ref: contentRef, showsHorizontalScrollIndicator: p.showsHorizontalScrollIndicator ?? disabled, showsVerticalScrollIndicator: false, onLayout, onContentSizeChange, onScroll, horizontal: true, scrollEventThrottle: p.scrollEventThrottle ?? 5, children: p.children }); }; exports.ListX = ListX; //# sourceMappingURL=x.js.map