UNPKG

3.44 kBSource Map (JSON)View Raw
1{"version":3,"file":"NativeLinearGradient.android.js","sourceRoot":"","sources":["../src/NativeLinearGradient.android.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAW5D,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,KAAK,CAAC,SAAgB;IACtE,MAAM;QACJ,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAExF,6FAA6F;QAC7F,sEAAsE;QACtE,IAAI,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChD,IAAI,YAAY,GAAG,SAAS,CAAC,YAAY,IAAI,CAAC,CAAC;QAE/C,2BAA2B;QAC3B,wJAAwJ;QACxJ,IAAI,oBAAoB,GAAG;YACzB,SAAS,CAAC,mBAAmB,IAAI,YAAY;YAC7C,SAAS,CAAC,mBAAmB,IAAI,YAAY;YAC7C,SAAS,CAAC,oBAAoB,IAAI,YAAY;YAC9C,SAAS,CAAC,oBAAoB,IAAI,YAAY;YAC9C,SAAS,CAAC,uBAAuB,IAAI,YAAY;YACjD,SAAS,CAAC,uBAAuB,IAAI,YAAY;YACjD,SAAS,CAAC,sBAAsB,IAAI,YAAY;YAChD,SAAS,CAAC,sBAAsB,IAAI,YAAY;SACjD,CAAC;QAEF,OAAO,CACL,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAC5B;QAAA,CAAC,wBAAwB,CACvB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CACtE,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,WAAW,CAAC,CAAC,oBAAoB,CAAC,EAEpC;QAAA,CAAC,QAAQ,CACX;MAAA,EAAE,IAAI,CAAC,CACR,CAAC;IACJ,CAAC;CACF;AAED,MAAM,wBAAwB,GAAG,wBAAwB,CAAC,oBAAoB,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport { StyleSheet, View } from 'react-native';\nimport { requireNativeViewManager } from '@unimodules/core';\n\ntype Props = {\n colors: number[];\n locations?: number[] | null;\n startPoint?: Point | null;\n endPoint?: Point | null;\n} & React.ComponentProps<typeof View>;\n\ntype Point = [number, number];\n\nexport default class NativeLinearGradient extends React.Component<Props> {\n render() {\n let { colors, locations, startPoint, endPoint, children, style, ...props } = this.props;\n\n // TODO: revisit whether we need to inherit the container's borderRadius since this issue has\n // been resolved: https://github.com/facebook/react-native/issues/3198\n let flatStyle = StyleSheet.flatten(style) || {};\n let borderRadius = flatStyle.borderRadius || 0;\n\n // This is the format from:\n // https://developer.android.com/reference/android/graphics/Path.html#addRoundRect(android.graphics.RectF,%20float[],%20android.graphics.Path.Direction)\n let borderRadiiPerCorner = [\n flatStyle.borderTopLeftRadius || borderRadius,\n flatStyle.borderTopLeftRadius || borderRadius,\n flatStyle.borderTopRightRadius || borderRadius,\n flatStyle.borderTopRightRadius || borderRadius,\n flatStyle.borderBottomRightRadius || borderRadius,\n flatStyle.borderBottomRightRadius || borderRadius,\n flatStyle.borderBottomLeftRadius || borderRadius,\n flatStyle.borderBottomLeftRadius || borderRadius,\n ];\n\n return (\n <View {...props} style={style}>\n <BaseNativeLinearGradient\n style={{ position: 'absolute', top: 0, left: 0, bottom: 0, right: 0 }}\n colors={colors}\n startPoint={startPoint}\n endPoint={endPoint}\n locations={locations}\n borderRadii={borderRadiiPerCorner}\n />\n {children}\n </View>\n );\n }\n}\n\nconst BaseNativeLinearGradient = requireNativeViewManager('ExpoLinearGradient');\n"]}
\No newline at end of file