@draftbit/core 46.10.2-b59d51.2 → 46.10.2-da1334.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/lib/commonjs/components/Checkbox/CheckboxRow.js +23 -6
  2. package/lib/commonjs/components/Checkbox/context.js +1 -1
  3. package/lib/commonjs/components/FAB.js +4 -18
  4. package/lib/commonjs/components/Picker/Picker.js +13 -3
  5. package/lib/commonjs/index.js +0 -21
  6. package/lib/commonjs/mappings/NativeBase/Layout.js +98 -0
  7. package/lib/module/components/Picker/Picker.js +13 -3
  8. package/lib/module/components/Picker/PickerComponent.android.js +21 -3
  9. package/lib/module/index.js +0 -3
  10. package/lib/module/mappings/NativeBase/Layout.js +91 -0
  11. package/lib/typescript/src/components/Picker/Picker.d.ts.map +1 -1
  12. package/lib/typescript/src/index.d.ts +0 -3
  13. package/lib/typescript/src/index.d.ts.map +1 -1
  14. package/lib/typescript/src/mappings/NativeBase/Layout.d.ts +97 -0
  15. package/lib/typescript/src/mappings/NativeBase/Layout.d.ts.map +1 -0
  16. package/package.json +3 -3
  17. package/src/components/Picker/Picker.js +12 -3
  18. package/src/components/Picker/Picker.tsx +12 -3
  19. package/src/index.js +0 -3
  20. package/src/index.tsx +0 -3
  21. package/src/mappings/NativeBase/Layout.js +102 -0
  22. package/src/mappings/NativeBase/Layout.ts +117 -0
  23. package/lib/commonjs/components/Row.js +0 -73
  24. package/lib/commonjs/components/RowBodyIcon.js +0 -45
  25. package/lib/commonjs/components/RowHeadlineImageCaption.js +0 -45
  26. package/lib/commonjs/components/RowHeadlineImageIcon.js +0 -51
  27. package/lib/module/components/Row.js +0 -63
  28. package/lib/module/components/RowBodyIcon.js +0 -35
  29. package/lib/module/components/RowHeadlineImageCaption.js +0 -35
  30. package/lib/module/components/RowHeadlineImageIcon.js +0 -41
  31. package/lib/typescript/src/components/Row.d.ts +0 -21
  32. package/lib/typescript/src/components/Row.d.ts.map +0 -1
  33. package/lib/typescript/src/components/RowBodyIcon.d.ts +0 -16
  34. package/lib/typescript/src/components/RowBodyIcon.d.ts.map +0 -1
  35. package/lib/typescript/src/components/RowHeadlineImageCaption.d.ts +0 -16
  36. package/lib/typescript/src/components/RowHeadlineImageCaption.d.ts.map +0 -1
  37. package/lib/typescript/src/components/RowHeadlineImageIcon.d.ts +0 -18
  38. package/lib/typescript/src/components/RowHeadlineImageIcon.d.ts.map +0 -1
  39. package/src/components/Row.js +0 -48
  40. package/src/components/Row.tsx +0 -108
  41. package/src/components/RowBodyIcon.js +0 -8
  42. package/src/components/RowBodyIcon.tsx +0 -47
  43. package/src/components/RowHeadlineImageCaption.js +0 -12
  44. package/src/components/RowHeadlineImageCaption.tsx +0 -49
  45. package/src/components/RowHeadlineImageIcon.js +0 -14
  46. package/src/components/RowHeadlineImageIcon.tsx +0 -61
@@ -1,41 +0,0 @@
1
- import * as React from "react";
2
- import { withTheme } from "../theming";
3
- import Row from "./Row";
4
- import Config from "./Config";
5
- const RowHeadlineImageIcon = _ref => {
6
- let {
7
- Icon,
8
- icon,
9
- title,
10
- image,
11
- subtitle,
12
- multilineSubtitle = false,
13
- style,
14
- theme: {
15
- colors,
16
- typography
17
- }
18
- } = _ref;
19
- return /*#__PURE__*/React.createElement(Row, {
20
- titleTypeStyle: typography.headline6,
21
- titleColor: colors.strong,
22
- subtitleTypeStyle: typography.body2,
23
- subtitleColor: colors.medium,
24
- title: title,
25
- subtitle: subtitle,
26
- multilineSubtitle: multilineSubtitle,
27
- image: image,
28
- right: () => /*#__PURE__*/React.createElement(Icon, {
29
- name: icon,
30
- size: multilineSubtitle ? Config.rowMultiLineIconSize : Config.rowSingleLineIconSize,
31
- color: colors.light,
32
- style: {
33
- marginLeft: 16,
34
- alignSelf: multilineSubtitle ? "flex-start" : "center",
35
- marginTop: multilineSubtitle ? 4 : 0
36
- }
37
- }),
38
- style: style
39
- });
40
- };
41
- export default withTheme(RowHeadlineImageIcon);
@@ -1,21 +0,0 @@
1
- import * as React from "react";
2
- import { ImageSourcePropType, StyleProp, TextStyle, ViewStyle } from "react-native";
3
- import theme from "../styles/DefaultTheme";
4
- declare type Props = {
5
- titleTypeStyle?: StyleProp<TextStyle>;
6
- titleColor?: string;
7
- subtitleTypeStyle?: StyleProp<TextStyle>;
8
- subtitleColor?: string;
9
- title?: string;
10
- subtitle?: string;
11
- multilineSubtitle?: boolean;
12
- image?: string | ImageSourcePropType;
13
- right?: () => React.ReactNode;
14
- style?: StyleProp<ViewStyle>;
15
- theme: typeof theme;
16
- };
17
- declare const _default: React.ComponentType<import("@draftbit/react-theme-provider").$Without<React.PropsWithChildren<Props>, "theme"> & {
18
- theme?: import("@draftbit/react-theme-provider").$DeepPartial<any> | undefined;
19
- }> & import("@draftbit/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<React.ComponentType<React.PropsWithChildren<Props>> & React.FC<React.PropsWithChildren<Props>>, {}>;
20
- export default _default;
21
- //# sourceMappingURL=Row.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../src/components/Row.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAIL,mBAAmB,EAEnB,SAAS,EACT,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,MAAM,wBAAwB,CAAC;AAE3C,aAAK,KAAK,GAAG;IACX,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,EAAE,OAAO,KAAK,CAAC;CACrB,CAAC;;;;AAgFF,wBAA8B"}
@@ -1,16 +0,0 @@
1
- import * as React from "react";
2
- import type { Theme } from "../styles/DefaultTheme";
3
- import type { IconSlot } from "../interfaces/Icon";
4
- import { StyleProp, ViewStyle } from "react-native";
5
- declare type Props = {
6
- title?: string;
7
- subtitle?: string;
8
- icon: string;
9
- style?: StyleProp<ViewStyle>;
10
- theme: Theme;
11
- } & IconSlot;
12
- declare const _default: React.ComponentType<import("@draftbit/react-theme-provider").$Without<React.PropsWithChildren<Props>, "theme"> & {
13
- theme?: import("@draftbit/react-theme-provider").$DeepPartial<any> | undefined;
14
- }> & import("@draftbit/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<React.ComponentType<React.PropsWithChildren<Props>> & React.FC<React.PropsWithChildren<Props>>, {}>;
15
- export default _default;
16
- //# sourceMappingURL=RowBodyIcon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RowBodyIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/RowBodyIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEpD,aAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,EAAE,KAAK,CAAC;CACd,GAAG,QAAQ,CAAC;;;;AA+Bb,wBAAsC"}
@@ -1,16 +0,0 @@
1
- import * as React from "react";
2
- import { ImageSourcePropType, StyleProp, ViewStyle } from "react-native";
3
- import theme from "../styles/DefaultTheme";
4
- declare type Props = {
5
- title?: string;
6
- subtitle?: string;
7
- caption?: string;
8
- image: string | ImageSourcePropType;
9
- style?: StyleProp<ViewStyle>;
10
- theme: typeof theme;
11
- };
12
- declare const _default: React.ComponentType<import("@draftbit/react-theme-provider").$Without<React.PropsWithChildren<Props>, "theme"> & {
13
- theme?: import("@draftbit/react-theme-provider").$DeepPartial<any> | undefined;
14
- }> & import("@draftbit/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<React.ComponentType<React.PropsWithChildren<Props>> & React.FC<React.PropsWithChildren<Props>>, {}>;
15
- export default _default;
16
- //# sourceMappingURL=RowHeadlineImageCaption.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RowHeadlineImageCaption.d.ts","sourceRoot":"","sources":["../../../../src/components/RowHeadlineImageCaption.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAQ,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG/E,OAAO,KAAK,MAAM,wBAAwB,CAAC;AAE3C,aAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAAC;IACpC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,EAAE,OAAO,KAAK,CAAC;CACrB,CAAC;;;;AAmCF,wBAAkD"}
@@ -1,18 +0,0 @@
1
- import * as React from "react";
2
- import type { Theme } from "../styles/DefaultTheme";
3
- import type { IconSlot } from "../interfaces/Icon";
4
- import { ImageSourcePropType, StyleProp, ViewStyle } from "react-native";
5
- declare type Props = {
6
- title?: string;
7
- image: string | ImageSourcePropType;
8
- subtitle?: string;
9
- multilineSubtitle?: boolean;
10
- icon: string;
11
- style?: StyleProp<ViewStyle>;
12
- theme: Theme;
13
- } & IconSlot;
14
- declare const _default: React.ComponentType<import("@draftbit/react-theme-provider").$Without<React.PropsWithChildren<Props>, "theme"> & {
15
- theme?: import("@draftbit/react-theme-provider").$DeepPartial<any> | undefined;
16
- }> & import("@draftbit/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<React.ComponentType<React.PropsWithChildren<Props>> & React.FC<React.PropsWithChildren<Props>>, {}>;
17
- export default _default;
18
- //# sourceMappingURL=RowHeadlineImageIcon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RowHeadlineImageIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/RowHeadlineImageIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzE,aAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,EAAE,KAAK,CAAC;CACd,GAAG,QAAQ,CAAC;;;;AA2Cb,wBAA+C"}
@@ -1,48 +0,0 @@
1
- import * as React from "react";
2
- import { View, Text, Image, StyleSheet, } from "react-native";
3
- import { withTheme } from "../theming";
4
- import Config from "./Config";
5
- const Row = ({ titleTypeStyle, titleColor, subtitleTypeStyle, subtitleColor, title, subtitle, multilineSubtitle, image, right, style, }) => {
6
- return (React.createElement(View, { style: [styles.container, { padding: 16 }, style] },
7
- React.createElement(View, { style: styles.leftContainer },
8
- image && (React.createElement(Image, { source: typeof image === "string" ? { uri: image } : image, style: {
9
- marginRight: 12,
10
- width: subtitle
11
- ? Config.rowMultiLineImageSize
12
- : Config.rowSingleLineImageSize,
13
- height: subtitle
14
- ? Config.rowMultiLineImageSize
15
- : Config.rowSingleLineImageSize,
16
- } })),
17
- React.createElement(View, { style: styles.textContainer },
18
- React.createElement(Text, { style: [
19
- titleTypeStyle,
20
- {
21
- color: titleColor,
22
- },
23
- ], numberOfLines: 1 }, title),
24
- subtitle ? (React.createElement(Text, { style: [
25
- subtitleTypeStyle,
26
- {
27
- color: subtitleColor,
28
- marginTop: 4,
29
- },
30
- ], numberOfLines: multilineSubtitle ? undefined : 1 }, subtitle)) : null)),
31
- right && right()));
32
- };
33
- const styles = StyleSheet.create({
34
- leftContainer: {
35
- flexDirection: "row",
36
- flex: 1,
37
- },
38
- container: {
39
- flexDirection: "row",
40
- justifyContent: "space-between",
41
- alignItems: "center",
42
- },
43
- textContainer: {
44
- flex: 1,
45
- justifyContent: "center",
46
- },
47
- });
48
- export default withTheme(Row);
@@ -1,108 +0,0 @@
1
- import * as React from "react";
2
- import {
3
- View,
4
- Text,
5
- Image,
6
- ImageSourcePropType,
7
- StyleSheet,
8
- StyleProp,
9
- TextStyle,
10
- ViewStyle,
11
- } from "react-native";
12
- import { withTheme } from "../theming";
13
- import Config from "./Config";
14
- import theme from "../styles/DefaultTheme";
15
-
16
- type Props = {
17
- titleTypeStyle?: StyleProp<TextStyle>;
18
- titleColor?: string;
19
- subtitleTypeStyle?: StyleProp<TextStyle>;
20
- subtitleColor?: string;
21
- title?: string;
22
- subtitle?: string;
23
- multilineSubtitle?: boolean;
24
- image?: string | ImageSourcePropType;
25
- right?: () => React.ReactNode;
26
- style?: StyleProp<ViewStyle>;
27
- theme: typeof theme;
28
- };
29
-
30
- const Row: React.FC<React.PropsWithChildren<Props>> = ({
31
- titleTypeStyle,
32
- titleColor,
33
- subtitleTypeStyle,
34
- subtitleColor,
35
- title,
36
- subtitle,
37
- multilineSubtitle,
38
- image,
39
- right,
40
- style,
41
- }) => {
42
- return (
43
- <View style={[styles.container, { padding: 16 }, style]}>
44
- <View style={styles.leftContainer}>
45
- {image && (
46
- <Image
47
- source={typeof image === "string" ? { uri: image } : image}
48
- style={{
49
- marginRight: 12,
50
- width: subtitle
51
- ? Config.rowMultiLineImageSize
52
- : Config.rowSingleLineImageSize,
53
- height: subtitle
54
- ? Config.rowMultiLineImageSize
55
- : Config.rowSingleLineImageSize,
56
- }}
57
- />
58
- )}
59
- <View style={styles.textContainer}>
60
- <Text
61
- style={[
62
- titleTypeStyle,
63
- {
64
- color: titleColor,
65
- },
66
- ]}
67
- numberOfLines={1}
68
- >
69
- {title}
70
- </Text>
71
- {subtitle ? (
72
- <Text
73
- style={[
74
- subtitleTypeStyle,
75
- {
76
- color: subtitleColor,
77
- marginTop: 4,
78
- },
79
- ]}
80
- numberOfLines={multilineSubtitle ? undefined : 1}
81
- >
82
- {subtitle}
83
- </Text>
84
- ) : null}
85
- </View>
86
- </View>
87
- {right && right()}
88
- </View>
89
- );
90
- };
91
-
92
- const styles = StyleSheet.create({
93
- leftContainer: {
94
- flexDirection: "row",
95
- flex: 1,
96
- },
97
- container: {
98
- flexDirection: "row",
99
- justifyContent: "space-between",
100
- alignItems: "center",
101
- },
102
- textContainer: {
103
- flex: 1,
104
- justifyContent: "center",
105
- },
106
- });
107
-
108
- export default withTheme(Row);
@@ -1,8 +0,0 @@
1
- import * as React from "react";
2
- import { withTheme } from "../theming";
3
- import Row from "./Row";
4
- import Config from "./Config";
5
- const RowBodyIcon = ({ Icon, title, subtitle, icon, style, theme: { colors, typography }, }) => {
6
- return (React.createElement(Row, { titleTypeStyle: typography.body1, titleColor: colors.medium, subtitleTypeStyle: typography.subtitle2, subtitleColor: colors.light, title: title, subtitle: subtitle, right: () => (React.createElement(Icon, { name: icon, size: Config.rowSingleLineIconSize, color: colors.light, style: { marginLeft: 16 } })), style: style }));
7
- };
8
- export default withTheme(RowBodyIcon);
@@ -1,47 +0,0 @@
1
- import * as React from "react";
2
- import { withTheme } from "../theming";
3
- import type { Theme } from "../styles/DefaultTheme";
4
- import type { IconSlot } from "../interfaces/Icon";
5
-
6
- import Row from "./Row";
7
- import Config from "./Config";
8
- import { StyleProp, ViewStyle } from "react-native";
9
-
10
- type Props = {
11
- title?: string;
12
- subtitle?: string;
13
- icon: string;
14
- style?: StyleProp<ViewStyle>;
15
- theme: Theme;
16
- } & IconSlot;
17
-
18
- const RowBodyIcon: React.FC<React.PropsWithChildren<Props>> = ({
19
- Icon,
20
- title,
21
- subtitle,
22
- icon,
23
- style,
24
- theme: { colors, typography },
25
- }) => {
26
- return (
27
- <Row
28
- titleTypeStyle={typography.body1}
29
- titleColor={colors.medium}
30
- subtitleTypeStyle={typography.subtitle2}
31
- subtitleColor={colors.light}
32
- title={title}
33
- subtitle={subtitle}
34
- right={() => (
35
- <Icon
36
- name={icon}
37
- size={Config.rowSingleLineIconSize}
38
- color={colors.light}
39
- style={{ marginLeft: 16 }}
40
- />
41
- )}
42
- style={style}
43
- />
44
- );
45
- };
46
-
47
- export default withTheme(RowBodyIcon);
@@ -1,12 +0,0 @@
1
- import * as React from "react";
2
- import { Text } from "react-native";
3
- import { withTheme } from "../theming";
4
- import Row from "./Row";
5
- const RowHeadlineImageCaption = ({ title, subtitle, caption, image, style, theme: { colors, typography }, }) => {
6
- return (React.createElement(Row, { titleTypeStyle: typography.headline6, titleColor: colors.strong, subtitleTypeStyle: typography.body2, subtitleColor: colors.medium, title: title, subtitle: subtitle, image: image, right: () => (React.createElement(Text, { style: {
7
- ...typography.caption,
8
- color: colors.strong,
9
- marginLeft: 16,
10
- } }, caption)), style: style }));
11
- };
12
- export default withTheme(RowHeadlineImageCaption);
@@ -1,49 +0,0 @@
1
- import * as React from "react";
2
- import { Text, ImageSourcePropType, StyleProp, ViewStyle } from "react-native";
3
- import { withTheme } from "../theming";
4
- import Row from "./Row";
5
- import theme from "../styles/DefaultTheme";
6
-
7
- type Props = {
8
- title?: string;
9
- subtitle?: string;
10
- caption?: string;
11
- image: string | ImageSourcePropType;
12
- style?: StyleProp<ViewStyle>;
13
- theme: typeof theme;
14
- };
15
-
16
- const RowHeadlineImageCaption: React.FC<React.PropsWithChildren<Props>> = ({
17
- title,
18
- subtitle,
19
- caption,
20
- image,
21
- style,
22
- theme: { colors, typography },
23
- }) => {
24
- return (
25
- <Row
26
- titleTypeStyle={typography.headline6}
27
- titleColor={colors.strong}
28
- subtitleTypeStyle={typography.body2}
29
- subtitleColor={colors.medium}
30
- title={title}
31
- subtitle={subtitle}
32
- image={image}
33
- right={() => (
34
- <Text
35
- style={{
36
- ...typography.caption,
37
- color: colors.strong,
38
- marginLeft: 16,
39
- }}
40
- >
41
- {caption}
42
- </Text>
43
- )}
44
- style={style}
45
- />
46
- );
47
- };
48
-
49
- export default withTheme(RowHeadlineImageCaption);
@@ -1,14 +0,0 @@
1
- import * as React from "react";
2
- import { withTheme } from "../theming";
3
- import Row from "./Row";
4
- import Config from "./Config";
5
- const RowHeadlineImageIcon = ({ Icon, icon, title, image, subtitle, multilineSubtitle = false, style, theme: { colors, typography }, }) => {
6
- return (React.createElement(Row, { titleTypeStyle: typography.headline6, titleColor: colors.strong, subtitleTypeStyle: typography.body2, subtitleColor: colors.medium, title: title, subtitle: subtitle, multilineSubtitle: multilineSubtitle, image: image, right: () => (React.createElement(Icon, { name: icon, size: multilineSubtitle
7
- ? Config.rowMultiLineIconSize
8
- : Config.rowSingleLineIconSize, color: colors.light, style: {
9
- marginLeft: 16,
10
- alignSelf: multilineSubtitle ? "flex-start" : "center",
11
- marginTop: multilineSubtitle ? 4 : 0,
12
- } })), style: style }));
13
- };
14
- export default withTheme(RowHeadlineImageIcon);
@@ -1,61 +0,0 @@
1
- import * as React from "react";
2
- import { withTheme } from "../theming";
3
- import type { Theme } from "../styles/DefaultTheme";
4
- import type { IconSlot } from "../interfaces/Icon";
5
-
6
- import Row from "./Row";
7
- import Config from "./Config";
8
- import { ImageSourcePropType, StyleProp, ViewStyle } from "react-native";
9
-
10
- type Props = {
11
- title?: string;
12
- image: string | ImageSourcePropType;
13
- subtitle?: string;
14
- multilineSubtitle?: boolean;
15
- icon: string;
16
- style?: StyleProp<ViewStyle>;
17
- theme: Theme;
18
- } & IconSlot;
19
-
20
- const RowHeadlineImageIcon: React.FC<React.PropsWithChildren<Props>> = ({
21
- Icon,
22
- icon,
23
- title,
24
- image,
25
- subtitle,
26
- multilineSubtitle = false,
27
- style,
28
- theme: { colors, typography },
29
- }) => {
30
- return (
31
- <Row
32
- titleTypeStyle={typography.headline6}
33
- titleColor={colors.strong}
34
- subtitleTypeStyle={typography.body2}
35
- subtitleColor={colors.medium}
36
- title={title}
37
- subtitle={subtitle}
38
- multilineSubtitle={multilineSubtitle}
39
- image={image}
40
- right={() => (
41
- <Icon
42
- name={icon}
43
- size={
44
- multilineSubtitle
45
- ? Config.rowMultiLineIconSize
46
- : Config.rowSingleLineIconSize
47
- }
48
- color={colors.light}
49
- style={{
50
- marginLeft: 16,
51
- alignSelf: multilineSubtitle ? "flex-start" : "center",
52
- marginTop: multilineSubtitle ? 4 : 0,
53
- }}
54
- />
55
- )}
56
- style={style}
57
- />
58
- );
59
- };
60
-
61
- export default withTheme(RowHeadlineImageIcon);