UNPKG

4.58 kBSource Map (JSON)View Raw
1{"version":3,"sources":["CardContent.tsx"],"names":["CardContent","index","total","siblings","style","rest","cover","title","contentStyle","prev","next","styles","only","first","last","container","displayName","StyleSheet","create","paddingHorizontal","paddingTop","paddingBottom","paddingVertical"],"mappings":";;;;;;;AAAA;;AACA;;;;;;;;AAsBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG,CAAC;AAAEC,EAAAA,KAAF;AAASC,EAAAA,KAAT;AAAgBC,EAAAA,QAAhB;AAA0BC,EAAAA,KAA1B;AAAiC,KAAGC;AAApC,CAAD,KAAuD;AACzE,QAAMC,KAAK,GAAG,sBAAd;AACA,QAAMC,KAAK,GAAG,sBAAd;AAEA,MAAIC,YAAJ,EAAkBC,IAAlB,EAAwBC,IAAxB;;AAEA,MAAI,OAAOT,KAAP,KAAiB,QAAjB,IAA6BE,QAAjC,EAA2C;AACzCM,IAAAA,IAAI,GAAGN,QAAQ,CAACF,KAAK,GAAG,CAAT,CAAf;AACAS,IAAAA,IAAI,GAAGP,QAAQ,CAACF,KAAK,GAAG,CAAT,CAAf;AACD;;AAED,MACGQ,IAAI,KAAKH,KAAT,IAAkBI,IAAI,KAAKJ,KAA5B,IACCG,IAAI,KAAKF,KAAT,IAAkBG,IAAI,KAAKH,KAD5B,IAEAL,KAAK,KAAK,CAHZ,EAIE;AACAM,IAAAA,YAAY,GAAGG,MAAM,CAACC,IAAtB;AACD,GAND,MAMO,IAAIX,KAAK,KAAK,CAAd,EAAiB;AACtB,QAAIS,IAAI,KAAKJ,KAAT,IAAkBI,IAAI,KAAKH,KAA/B,EAAsC;AACpCC,MAAAA,YAAY,GAAGG,MAAM,CAACC,IAAtB;AACD,KAFD,MAEO;AACLJ,MAAAA,YAAY,GAAGG,MAAM,CAACE,KAAtB;AACD;AACF,GANM,MAMA,IAAI,OAAOX,KAAP,KAAiB,QAAjB,IAA6BD,KAAK,KAAKC,KAAK,GAAG,CAAnD,EAAsD;AAC3D,QAAIO,IAAI,KAAKH,KAAT,IAAkBG,IAAI,KAAKF,KAA/B,EAAsC;AACpCC,MAAAA,YAAY,GAAGG,MAAM,CAACC,IAAtB;AACD,KAFD,MAEO;AACLJ,MAAAA,YAAY,GAAGG,MAAM,CAACG,IAAtB;AACD;AACF,GANM,MAMA,IAAIL,IAAI,KAAKH,KAAT,IAAkBG,IAAI,KAAKF,KAA/B,EAAsC;AAC3CC,IAAAA,YAAY,GAAGG,MAAM,CAACE,KAAtB;AACD,GAFM,MAEA,IAAIH,IAAI,KAAKJ,KAAT,IAAkBI,IAAI,KAAKH,KAA/B,EAAsC;AAC3CC,IAAAA,YAAY,GAAGG,MAAM,CAACG,IAAtB;AACD;;AAED,sBAAO,oBAAC,iBAAD,eAAUT,IAAV;AAAgB,IAAA,KAAK,EAAE,CAACM,MAAM,CAACI,SAAR,EAAmBP,YAAnB,EAAiCJ,KAAjC;AAAvB,KAAP;AACD,CApCD;;AAsCAJ,WAAW,CAACgB,WAAZ,GAA0B,cAA1B;;AAEA,MAAML,MAAM,GAAGM,wBAAWC,MAAX,CAAkB;AAC/BH,EAAAA,SAAS,EAAE;AACTI,IAAAA,iBAAiB,EAAE;AADV,GADoB;AAI/BN,EAAAA,KAAK,EAAE;AACLO,IAAAA,UAAU,EAAE;AADP,GAJwB;AAO/BN,EAAAA,IAAI,EAAE;AACJO,IAAAA,aAAa,EAAE;AADX,GAPyB;AAU/BT,EAAAA,IAAI,EAAE;AACJU,IAAAA,eAAe,EAAE;AADb;AAVyB,CAAlB,CAAf;;eAeetB,W","sourcesContent":["import * as React from 'react';\nimport { StyleSheet, StyleProp, View, ViewStyle } from 'react-native';\n\ntype Props = React.ComponentPropsWithRef<typeof View> & {\n /**\n * Items inside the `Card.Content`.\n */\n children: React.ReactNode;\n /**\n * @internal\n */\n index?: number;\n /**\n * @internal\n */\n total?: number;\n /**\n * @internal\n */\n siblings?: Array<string>;\n style?: StyleProp<ViewStyle>;\n};\n\n/**\n * A component to show content inside a Card.\n *\n * <div class=\"screenshots\">\n * <figure>\n * <img class=\"medium\" src=\"screenshots/card-content-example.png\" />\n * </figure>\n * </div>\n *\n *\n * ## Usage\n * ```js\n * import * as React from 'react';\n * import { Card, Title, Paragraph } from 'react-native-paper';\n *\n * const MyComponent = () => (\n * <Card>\n * <Card.Content>\n * <Title>Card title</Title>\n * <Paragraph>Card content</Paragraph>\n * </Card.Content>\n * </Card>\n * );\n *\n * export default MyComponent;\n * ```\n */\nconst CardContent = ({ index, total, siblings, style, ...rest }: Props) => {\n const cover = 'withTheme(CardCover)';\n const title = 'withTheme(CardTitle)';\n\n let contentStyle, prev, next;\n\n if (typeof index === 'number' && siblings) {\n prev = siblings[index - 1];\n next = siblings[index + 1];\n }\n\n if (\n (prev === cover && next === cover) ||\n (prev === title && next === title) ||\n total === 1\n ) {\n contentStyle = styles.only;\n } else if (index === 0) {\n if (next === cover || next === title) {\n contentStyle = styles.only;\n } else {\n contentStyle = styles.first;\n }\n } else if (typeof total === 'number' && index === total - 1) {\n if (prev === cover || prev === title) {\n contentStyle = styles.only;\n } else {\n contentStyle = styles.last;\n }\n } else if (prev === cover || prev === title) {\n contentStyle = styles.first;\n } else if (next === cover || next === title) {\n contentStyle = styles.last;\n }\n\n return <View {...rest} style={[styles.container, contentStyle, style]} />;\n};\n\nCardContent.displayName = 'Card.Content';\n\nconst styles = StyleSheet.create({\n container: {\n paddingHorizontal: 16,\n },\n first: {\n paddingTop: 16,\n },\n last: {\n paddingBottom: 16,\n },\n only: {\n paddingVertical: 16,\n },\n});\n\nexport default CardContent;\n"]}
\No newline at end of file