// @ts-nocheck

export const updateContentStyle = (contentStyle, contentContainerStyleSource) => {
  const {
    paddingTop,
    paddingRight,
    paddingBottom,
    paddingLeft,
    padding,
    paddingVertical,
    paddingHorizontal,
    backgroundColor
  } = contentContainerStyleSource !== null && contentContainerStyleSource !== void 0 ? contentContainerStyleSource : {};
  contentStyle.paddingLeft = Number(paddingLeft || paddingHorizontal || padding || 0);
  contentStyle.paddingRight = Number(paddingRight || paddingHorizontal || padding || 0);
  contentStyle.paddingTop = Number(paddingTop || paddingVertical || padding || 0);
  contentStyle.paddingBottom = Number(paddingBottom || paddingVertical || padding || 0);
  contentStyle.backgroundColor = backgroundColor;
  return contentStyle;
};
export const hasUnsupportedKeysInContentContainerStyle = contentContainerStyleSource => {
  const {
    paddingTop,
    paddingRight,
    paddingBottom,
    paddingLeft,
    padding,
    paddingVertical,
    paddingHorizontal,
    backgroundColor,
    ...rest
  } = contentContainerStyleSource !== null && contentContainerStyleSource !== void 0 ? contentContainerStyleSource : {};
  return Object.keys(rest).length > 0;
};

/** Applies padding corrections to given dimension. Mutates the dim object that was passed and returns it. */
export const applyContentContainerInsetForLayoutManager = (dim, contentContainerStyle, horizontal) => {
  const contentStyle = updateContentStyle({}, contentContainerStyle);
  if (horizontal) {
    dim.height -= contentStyle.paddingTop + contentStyle.paddingBottom;
  } else {
    dim.width -= contentStyle.paddingLeft + contentStyle.paddingRight;
  }
  return dim;
};

/** Returns padding to be applied on content container and will ignore paddings that have already been handled. */
export const getContentContainerPadding = (contentStyle, horizontal) => {
  if (horizontal) {
    return {
      paddingTop: contentStyle.paddingTop,
      paddingBottom: contentStyle.paddingBottom
    };
  } else {
    return {
      paddingLeft: contentStyle.paddingLeft,
      paddingRight: contentStyle.paddingRight
    };
  }
};
//# sourceMappingURL=ContentContainerUtils.js.map