"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.PressableListItemBase = void 0;
var _reactNative = require("react-native");
var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
var _core = require("../../core");
var _hooks = require("../../hooks");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const PressableListItemBase = ({
  onPress,
  testID,
  children,
  accessibilityRole,
  ...props
}) => {
  const {
    onPressIn,
    onPressOut,
    scaleAnimatedStyle,
    backgroundAnimatedStyle
  } = (0, _hooks.useListItemAnimation)();
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
    onPress: onPress,
    testID: testID,
    accessible: true,
    onPressIn: onPressIn,
    onPressOut: onPressOut,
    onTouchEnd: onPressOut,
    accessibilityRole: accessibilityRole || "button",
    ...props,
    children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
      style: [_core.IOListItemStyles.listItem, backgroundAnimatedStyle],
      children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
        style: [_core.IOListItemStyles.listItemInner, {
          columnGap: _core.IOListItemVisualParams.iconMargin
        }, scaleAnimatedStyle],
        children: children
      })
    })
  });
};
exports.PressableListItemBase = PressableListItemBase;
//# sourceMappingURL=PressableListItemBase.js.map