69e1b8f167442cb3cc0fecd67b868d52.json 6.92 KB
{"ast":null,"code":"var _interopRequireWildcard=require(\"@babel/runtime/helpers/interopRequireWildcard\");var _interopRequireDefault=require(\"@babel/runtime/helpers/interopRequireDefault\");Object.defineProperty(exports,\"__esModule\",{value:true});exports.CardCover=exports.default=void 0;var _extends2=_interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));var _objectWithoutProperties2=_interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutProperties\"));var _classCallCheck2=_interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));var _createClass2=_interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));var _possibleConstructorReturn2=_interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));var _getPrototypeOf2=_interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));var _inherits2=_interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));var React=_interopRequireWildcard(require(\"react\"));var _StyleSheet=_interopRequireDefault(require(\"react-native-web/dist/exports/StyleSheet\"));var _View=_interopRequireDefault(require(\"react-native-web/dist/exports/View\"));var _Image=_interopRequireDefault(require(\"react-native-web/dist/exports/Image\"));var _theming=require(\"../../core/theming\");var _colors=require(\"../../styles/colors\");var _jsxFileName=\"/Users/satya/Workspace/Callstack/react-native-paper/src/components/Card/CardCover.tsx\";var CardCover=function(_React$Component){(0,_inherits2.default)(CardCover,_React$Component);function CardCover(){(0,_classCallCheck2.default)(this,CardCover);return(0,_possibleConstructorReturn2.default)(this,(0,_getPrototypeOf2.default)(CardCover).apply(this,arguments));}(0,_createClass2.default)(CardCover,[{key:\"render\",value:function render(){var _this$props=this.props,index=_this$props.index,total=_this$props.total,style=_this$props.style,theme=_this$props.theme,rest=(0,_objectWithoutProperties2.default)(_this$props,[\"index\",\"total\",\"style\",\"theme\"]);var roundness=theme.roundness;var coverStyle;if(index===0){if(total===1){coverStyle={borderRadius:roundness};}else{coverStyle={borderTopLeftRadius:roundness,borderTopRightRadius:roundness};}}else if(typeof total==='number'&&index===total-1){coverStyle={borderBottomLeftRadius:roundness};}return React.createElement(_View.default,{style:[styles.container,coverStyle,style],__source:{fileName:_jsxFileName,lineNumber:69}},React.createElement(_Image.default,(0,_extends2.default)({},rest,{style:[styles.image,coverStyle],__source:{fileName:_jsxFileName,lineNumber:70}})));}}]);return CardCover;}(React.Component);exports.CardCover=CardCover;CardCover.displayName='Card.Cover';var styles=_StyleSheet.default.create({container:{height:195,backgroundColor:_colors.grey200,overflow:'hidden'},image:{flex:1,height:undefined,width:undefined,padding:16,justifyContent:'flex-end',resizeMode:'cover'}});var _default=(0,_theming.withTheme)(CardCover);exports.default=_default;","map":{"version":3,"sources":["CardCover.tsx"],"names":["CardCover","React","Component","displayName","index","total","style","theme","rest","roundness","coverStyle","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","styles","StyleSheet","container","height","backgroundColor","overflow","image","flex","width","padding","justifyContent","resizeMode","withTheme"],"mappings":"o6BAAA,oD,8PAEA,2CACA,2C,yGAsCMA,GAAAA,CAAAA,S,8UAGK,CAAA,GAAA,CAAA,WAAA,CACyC,KADzC,KAAA,CACCI,KADD,CAAA,WAAA,CAAA,KAAA,CACQC,KADR,CAAA,WAAA,CAAA,KAAA,CACeC,KADf,CAAA,WAAA,CAAA,KAAA,CACsBC,KADtB,CAAA,WAAA,CAAA,KAAA,CACgCC,IADhC,CAAA,sCAAA,WAAA,CAAA,CAAA,OAAA,CAAA,OAAA,CAAA,OAAA,CAAA,OAAA,CAAA,CAAA,CAAA,GAECC,CAAAA,SAFD,CAEeF,KAFf,CAAA,SAAA,CAIP,GAAA,CAAA,UAAA,CAEA,GAAIH,KAAK,GAAT,CAAA,CAAiB,CACf,GAAIC,KAAK,GAAT,CAAA,CAAiB,CACfK,UAAU,CAAG,CACXC,YAAY,CADdD,SAAa,CAAbA,CADF,CAAA,IAIO,CACLA,UAAU,CAAG,CACXE,mBAAmB,CADR,SAAA,CAEXC,oBAAoB,CAFtBH,SAAa,CAAbA,CAKH,CAXD,CAAA,IAWO,IAAI,MAAA,CAAA,KAAA,GAAA,QAAA,EAA6BN,KAAK,GAAKC,KAAK,CAAhD,CAAA,CAAsD,CAC3DK,UAAU,CAAG,CACXI,sBAAsB,CADxBJ,SAAa,CAAbA,CAKF,OACE,CAAA,KAAA,CAAA,aAAA,CAAA,aAAA,CAAA,CAAM,KAAK,CAAE,CAACK,MAAM,CAAP,SAAA,CAAA,UAAA,CAAb,KAAa,CAAb,CAAA,QAAA,CAAA,CAAA,QAAA,CAAA,YAAA,CAAA,UAAA,CAAA,EAAA,CAAA,CAAA,CACE,KAAA,CAAA,aAAA,CAAA,cAAA,CAAA,sBAAA,EAAA,CAAA,IAAA,CAAA,CAAiB,KAAK,CAAE,CAACA,MAAM,CAAP,KAAA,CAAxB,UAAwB,CAAxB,CAAA,QAAA,CAAA,CAAA,QAAA,CAAA,YAAA,CAAA,UAAA,CAFJ,EAEI,CAAA,CAAA,CAAA,CADF,CADF,C,wBA1BoBd,KAAK,CAACC,S,CAAxBF,C,4BAAAA,S,CACGG,WADHH,CACiB,YADjBA,CAkCN,GAAMe,CAAAA,MAAM,CAAGC,oBAAAA,MAAAA,CAAkB,CAC/BC,SAAS,CAAE,CACTC,MAAM,CADG,GAAA,CAETC,eAAe,CAFN,eAAA,CAGTC,QAAQ,CAJqB,QACpB,CADoB,CAM/BC,KAAK,CAAE,CACLC,IAAI,CADC,CAAA,CAELJ,MAAM,CAFD,SAAA,CAGLK,KAAK,CAHA,SAAA,CAILC,OAAO,CAJF,EAAA,CAKLC,cAAc,CALT,UAAA,CAMLC,UAAU,CAZd,OAMS,CANwB,CAAlBV,CAAf,C,aAgBeW,uBAAf,SAAeA,C","sourcesContent":["import * as React from 'react';\nimport { StyleSheet, View, ViewStyle, Image, StyleProp } from 'react-native';\nimport { withTheme } from '../../core/theming';\nimport { grey200 } from '../../styles/colors';\nimport { Theme } from '../../types';\n\ntype Props = React.ComponentProps<typeof Image> & {\n  /**\n   * @internal\n   */\n  index?: number;\n  /**\n   * @internal\n   */\n  total?: number;\n  style?: StyleProp<ViewStyle>;\n  /**\n   * @optional\n   */\n  theme: Theme;\n};\n\n/**\n * A component to show a cover image inside a Card.\n *\n * ## Usage\n * ```js\n * import * as React from 'react';\n * import { Card } from 'react-native-paper';\n *\n * const MyComponent = () => (\n *   <Card>\n *     <Card.Cover source={{ uri: 'https://picsum.photos/700' }} />\n *   </Card>\n * );\n *\n * export default MyComponent;\n * ```\n *\n * @extends Image props https://facebook.github.io/react-native/docs/image.html#props\n */\nclass CardCover extends React.Component<Props> {\n  static displayName = 'Card.Cover';\n\n  render() {\n    const { index, total, style, theme, ...rest } = this.props;\n    const { roundness } = theme;\n\n    let coverStyle;\n\n    if (index === 0) {\n      if (total === 1) {\n        coverStyle = {\n          borderRadius: roundness,\n        };\n      } else {\n        coverStyle = {\n          borderTopLeftRadius: roundness,\n          borderTopRightRadius: roundness,\n        };\n      }\n    } else if (typeof total === 'number' && index === total - 1) {\n      coverStyle = {\n        borderBottomLeftRadius: roundness,\n      };\n    }\n\n    return (\n      <View style={[styles.container, coverStyle, style]}>\n        <Image {...rest} style={[styles.image, coverStyle]} />\n      </View>\n    );\n  }\n}\n\nconst styles = StyleSheet.create({\n  container: {\n    height: 195,\n    backgroundColor: grey200,\n    overflow: 'hidden',\n  },\n  image: {\n    flex: 1,\n    height: undefined,\n    width: undefined,\n    padding: 16,\n    justifyContent: 'flex-end',\n    resizeMode: 'cover',\n  },\n});\n\nexport default withTheme(CardCover);\n\n// @component-docs ignore-next-line\nexport { CardCover };\n"]},"metadata":{},"sourceType":"script"}