@draftbit/core 47.1.1-22301.2 → 47.1.1-832f38.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 (70) hide show
  1. package/lib/commonjs/components/Accordion/AccordionItem.js +23 -4
  2. package/lib/commonjs/components/Container.js +15 -4
  3. package/lib/commonjs/components/Table/Table.js +28 -0
  4. package/lib/commonjs/components/Table/TableCell.js +42 -0
  5. package/lib/commonjs/components/Table/TableHeader.js +32 -0
  6. package/lib/commonjs/components/Table/TablePaginator.js +12 -0
  7. package/lib/commonjs/components/Table/TableRow.js +38 -0
  8. package/lib/commonjs/components/Table/TableTitle.js +53 -0
  9. package/lib/commonjs/components/Table/index.js +48 -0
  10. package/lib/commonjs/constants.js +1 -1
  11. package/lib/commonjs/index.js +37 -0
  12. package/lib/commonjs/mappings/ScrollView.js +2 -0
  13. package/lib/commonjs/mappings/Table.js +100 -0
  14. package/lib/commonjs/utilities.js +2 -2
  15. package/lib/module/components/Table/Table.js +20 -0
  16. package/lib/module/components/Table/TableCell.js +34 -0
  17. package/lib/module/components/Table/TableHeader.js +24 -0
  18. package/lib/module/components/Table/TablePaginator.js +4 -0
  19. package/lib/module/components/Table/TableRow.js +30 -0
  20. package/lib/module/components/Table/TableTitle.js +45 -0
  21. package/lib/module/components/Table/index.js +6 -0
  22. package/lib/module/index.js +1 -0
  23. package/lib/module/mappings/ScrollView.js +3 -1
  24. package/lib/module/mappings/Table.js +93 -0
  25. package/lib/module/utilities.js +3 -3
  26. package/lib/typescript/src/components/Table/Table.d.ts +9 -0
  27. package/lib/typescript/src/components/Table/Table.d.ts.map +1 -0
  28. package/lib/typescript/src/components/Table/TableCell.d.ts +11 -0
  29. package/lib/typescript/src/components/Table/TableCell.d.ts.map +1 -0
  30. package/lib/typescript/src/components/Table/TableHeader.d.ts +13 -0
  31. package/lib/typescript/src/components/Table/TableHeader.d.ts.map +1 -0
  32. package/lib/typescript/src/components/Table/TablePaginator.d.ts +4 -0
  33. package/lib/typescript/src/components/Table/TablePaginator.d.ts.map +1 -0
  34. package/lib/typescript/src/components/Table/TableRow.d.ts +13 -0
  35. package/lib/typescript/src/components/Table/TableRow.d.ts.map +1 -0
  36. package/lib/typescript/src/components/Table/TableTitle.d.ts +13 -0
  37. package/lib/typescript/src/components/Table/TableTitle.d.ts.map +1 -0
  38. package/lib/typescript/src/components/Table/index.d.ts +7 -0
  39. package/lib/typescript/src/components/Table/index.d.ts.map +1 -0
  40. package/lib/typescript/src/index.d.ts +1 -0
  41. package/lib/typescript/src/index.d.ts.map +1 -1
  42. package/lib/typescript/src/mappings/ScrollView.d.ts +11 -0
  43. package/lib/typescript/src/mappings/ScrollView.d.ts.map +1 -1
  44. package/lib/typescript/src/mappings/Table.d.ts +149 -0
  45. package/lib/typescript/src/mappings/Table.d.ts.map +1 -0
  46. package/lib/typescript/src/utilities.d.ts +3 -3
  47. package/lib/typescript/src/utilities.d.ts.map +1 -1
  48. package/package.json +3 -3
  49. package/src/components/Table/Table.js +10 -0
  50. package/src/components/Table/Table.tsx +22 -0
  51. package/src/components/Table/TableCell.js +21 -0
  52. package/src/components/Table/TableCell.tsx +44 -0
  53. package/src/components/Table/TableHeader.js +11 -0
  54. package/src/components/Table/TableHeader.tsx +28 -0
  55. package/src/components/Table/TablePaginator.js +5 -0
  56. package/src/components/Table/TablePaginator.tsx +10 -0
  57. package/src/components/Table/TableRow.js +16 -0
  58. package/src/components/Table/TableRow.tsx +31 -0
  59. package/src/components/Table/TableTitle.js +28 -0
  60. package/src/components/Table/TableTitle.tsx +58 -0
  61. package/src/components/Table/index.js +6 -0
  62. package/src/components/Table/index.tsx +6 -0
  63. package/src/index.js +1 -0
  64. package/src/index.tsx +9 -0
  65. package/src/mappings/ScrollView.js +3 -1
  66. package/src/mappings/ScrollView.ts +4 -0
  67. package/src/mappings/Table.js +136 -0
  68. package/src/mappings/Table.ts +144 -0
  69. package/src/utilities.js +5 -2
  70. package/src/utilities.ts +13 -2
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ import { View, StyleSheet } from "react-native";
3
+ import { withTheme } from "../../theming";
4
+ const TableHeader = ({ children, style, theme, ...rest }) => (React.createElement(View, { ...rest, style: [styles.wrapper, { borderBottomColor: theme.colors.medium }, style] }, children));
5
+ const styles = StyleSheet.create({
6
+ wrapper: {
7
+ display: "flex",
8
+ flexDirection: "row",
9
+ },
10
+ });
11
+ export default withTheme(TableHeader);
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ import { View, StyleProp, ViewStyle, StyleSheet } from "react-native";
3
+ import { Theme } from "../../styles/DefaultTheme";
4
+ import { withTheme } from "../../theming";
5
+
6
+ export interface TableHeaderProps {
7
+ children: React.ReactNode;
8
+ style?: StyleProp<ViewStyle>;
9
+ theme: Theme;
10
+ }
11
+
12
+ const TableHeader = ({ children, style, theme, ...rest }: TableHeaderProps) => (
13
+ <View
14
+ {...rest}
15
+ style={[styles.wrapper, { borderBottomColor: theme.colors.medium }, style]}
16
+ >
17
+ {children}
18
+ </View>
19
+ );
20
+
21
+ const styles = StyleSheet.create({
22
+ wrapper: {
23
+ display: "flex",
24
+ flexDirection: "row",
25
+ },
26
+ });
27
+
28
+ export default withTheme(TableHeader);
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import { View, Text } from "react-native";
3
+ const TablePaginator = () => (React.createElement(View, null,
4
+ React.createElement(Text, null, "Table Paginator")));
5
+ export default TablePaginator;
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import { View, Text } from "react-native";
3
+
4
+ const TablePaginator = () => (
5
+ <View>
6
+ <Text>Table Paginator</Text>
7
+ </View>
8
+ );
9
+
10
+ export default TablePaginator;
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ import { View, StyleSheet } from "react-native";
3
+ import { withTheme } from "../../theming";
4
+ const TableRow = ({ children, style, theme, ...rest }) => (React.createElement(View, { ...rest, style: [styles.container, { borderBottomColor: theme.colors.light }, style] },
5
+ React.createElement(View, { style: styles.content }, children)));
6
+ const styles = StyleSheet.create({
7
+ container: {
8
+ display: "flex",
9
+ flexDirection: "row",
10
+ },
11
+ content: {
12
+ flex: 1,
13
+ flexDirection: "row",
14
+ },
15
+ });
16
+ export default withTheme(TableRow);
@@ -0,0 +1,31 @@
1
+ import React from "react";
2
+ import { View, StyleProp, ViewStyle, StyleSheet } from "react-native";
3
+ import { Theme } from "../../styles/DefaultTheme";
4
+ import { withTheme } from "../../theming";
5
+ export interface TableRowProps {
6
+ children: React.ReactNode;
7
+ style?: StyleProp<ViewStyle>;
8
+ theme: Theme;
9
+ }
10
+
11
+ const TableRow = ({ children, style, theme, ...rest }: TableRowProps) => (
12
+ <View
13
+ {...rest}
14
+ style={[styles.container, { borderBottomColor: theme.colors.light }, style]}
15
+ >
16
+ <View style={styles.content}>{children}</View>
17
+ </View>
18
+ );
19
+
20
+ const styles = StyleSheet.create({
21
+ container: {
22
+ display: "flex",
23
+ flexDirection: "row",
24
+ },
25
+ content: {
26
+ flex: 1,
27
+ flexDirection: "row",
28
+ },
29
+ });
30
+
31
+ export default withTheme(TableRow);
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ import { View, Text, StyleSheet } from "react-native";
3
+ import { extractStyles } from "../../utilities";
4
+ const TableTitle = ({ children, style, numeric = false, isAscending = false, numberOfLines = 1, title, ...rest }) => {
5
+ const { textStyles, viewStyles } = extractStyles(style);
6
+ return (React.createElement(View, { ...rest, style: [styles.wrapper, numeric && styles.right, viewStyles] },
7
+ React.createElement(Text, { style: [isAscending ? styles.sorted : { color: "gray" }, textStyles], numberOfLines: numberOfLines },
8
+ children,
9
+ title)));
10
+ };
11
+ const styles = StyleSheet.create({
12
+ wrapper: {
13
+ flex: 1,
14
+ display: "flex",
15
+ flexDirection: "row",
16
+ },
17
+ right: {
18
+ justifyContent: "flex-end",
19
+ },
20
+ sorted: {
21
+ // marginLeft: 8,
22
+ },
23
+ icon: {
24
+ height: 24,
25
+ justifyContent: "center",
26
+ },
27
+ });
28
+ export default TableTitle;
@@ -0,0 +1,58 @@
1
+ import React from "react";
2
+ import { View, Text, StyleProp, ViewStyle, StyleSheet } from "react-native";
3
+ import { extractStyles } from "../../utilities";
4
+
5
+ export interface TableCellProps {
6
+ children: React.ReactNode;
7
+ numeric?: boolean;
8
+ isAscending: boolean;
9
+ numberOfLines?: number;
10
+ title?: string;
11
+ style?: StyleProp<ViewStyle>;
12
+ }
13
+
14
+ const TableTitle = ({
15
+ children,
16
+ style,
17
+ numeric = false,
18
+ isAscending = false,
19
+ numberOfLines = 1,
20
+ title,
21
+ ...rest
22
+ }: TableCellProps) => {
23
+ const { textStyles, viewStyles } = extractStyles(style);
24
+ return (
25
+ <View
26
+ {...rest}
27
+ style={[styles.wrapper, numeric && styles.right, viewStyles]}
28
+ >
29
+ <Text
30
+ style={[isAscending ? styles.sorted : { color: "gray" }, textStyles]}
31
+ numberOfLines={numberOfLines}
32
+ >
33
+ {children}
34
+ {title}
35
+ </Text>
36
+ </View>
37
+ );
38
+ };
39
+
40
+ const styles = StyleSheet.create({
41
+ wrapper: {
42
+ flex: 1,
43
+ display: "flex",
44
+ flexDirection: "row",
45
+ },
46
+ right: {
47
+ justifyContent: "flex-end",
48
+ },
49
+ sorted: {
50
+ // marginLeft: 8,
51
+ },
52
+ icon: {
53
+ height: 24,
54
+ justifyContent: "center",
55
+ },
56
+ });
57
+
58
+ export default TableTitle;
@@ -0,0 +1,6 @@
1
+ export { default as Table } from "./Table";
2
+ export { default as TableHeader } from "./TableHeader";
3
+ export { default as TablePaginator } from "./TablePaginator";
4
+ export { default as TableRow } from "./TableRow";
5
+ export { default as TableCell } from "./TableCell";
6
+ export { default as TableTitle } from "./TableTitle";
@@ -0,0 +1,6 @@
1
+ export { default as Table } from "./Table";
2
+ export { default as TableHeader } from "./TableHeader";
3
+ export { default as TablePaginator } from "./TablePaginator";
4
+ export { default as TableRow } from "./TableRow";
5
+ export { default as TableCell } from "./TableCell";
6
+ export { default as TableTitle } from "./TableTitle";
package/src/index.js CHANGED
@@ -32,6 +32,7 @@ export { ActionSheet, ActionSheetItem, ActionSheetCancel, } from "./components/A
32
32
  export { Swiper, SwiperItem } from "./components/Swiper";
33
33
  export { Center, Circle, Square, Row, Stack, Spacer, } from "./components/Layout";
34
34
  export { RadioButton, RadioButtonGroup, RadioButtonRow, RadioButtonFieldGroup, } from "./components/RadioButton/index";
35
+ export { Table, TableRow, TablePaginator, TableHeader, TableCell, TableTitle, } from "./components/Table";
35
36
  /* Deprecated: Fix or Delete! */
36
37
  export { default as CardBlock } from "./components/CardBlock";
37
38
  export { default as CardContainer } from "./components/CardContainer";
package/src/index.tsx CHANGED
@@ -52,6 +52,15 @@ export {
52
52
  RadioButtonFieldGroup,
53
53
  } from "./components/RadioButton/index";
54
54
 
55
+ export {
56
+ Table,
57
+ TableRow,
58
+ TablePaginator,
59
+ TableHeader,
60
+ TableCell,
61
+ TableTitle,
62
+ } from "./components/Table";
63
+
55
64
  /* Deprecated: Fix or Delete! */
56
65
  export { default as CardBlock } from "./components/CardBlock";
57
66
  export { default as CardContainer } from "./components/CardContainer";
@@ -1,4 +1,4 @@
1
- import { COMPONENT_TYPES, createStaticBoolProp, CONTAINER_COMPONENT_STYLES_SECTIONS, } from "@draftbit/types";
1
+ import { COMPONENT_TYPES, createStaticBoolProp, CONTAINER_COMPONENT_STYLES_SECTIONS, Triggers, createActionProp, } from "@draftbit/types";
2
2
  export const SEED_DATA = {
3
3
  name: "Scroll View",
4
4
  tag: "ScrollView",
@@ -6,7 +6,9 @@ export const SEED_DATA = {
6
6
  category: COMPONENT_TYPES.view,
7
7
  stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
8
8
  layout: {},
9
+ triggers: [Triggers.OnRefresh],
9
10
  props: {
11
+ onRefresh: createActionProp(),
10
12
  horizontal: createStaticBoolProp({
11
13
  label: "Horizontal",
12
14
  description: "Render your list horizontally",
@@ -2,6 +2,8 @@ import {
2
2
  COMPONENT_TYPES,
3
3
  createStaticBoolProp,
4
4
  CONTAINER_COMPONENT_STYLES_SECTIONS,
5
+ Triggers,
6
+ createActionProp,
5
7
  } from "@draftbit/types";
6
8
 
7
9
  export const SEED_DATA = {
@@ -11,7 +13,9 @@ export const SEED_DATA = {
11
13
  category: COMPONENT_TYPES.view,
12
14
  stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
13
15
  layout: {},
16
+ triggers: [Triggers.OnRefresh],
14
17
  props: {
18
+ onRefresh: createActionProp(),
15
19
  horizontal: createStaticBoolProp({
16
20
  label: "Horizontal",
17
21
  description: "Render your list horizontally",
@@ -0,0 +1,136 @@
1
+ import { COMPONENT_TYPES, GROUPS, createBoolProp, createTextProp, createNumberProp, StylesPanelSections, } from "@draftbit/types";
2
+ export const SEED_DATA = [
3
+ {
4
+ name: "Table",
5
+ tag: "Table",
6
+ category: COMPONENT_TYPES.container,
7
+ stylesPanelSections: [
8
+ StylesPanelSections.Background,
9
+ StylesPanelSections.Borders,
10
+ StylesPanelSections.Size,
11
+ StylesPanelSections.MarginsAndPaddings,
12
+ StylesPanelSections.Position,
13
+ StylesPanelSections.Effects,
14
+ ],
15
+ layout: {
16
+ width: "100%",
17
+ },
18
+ props: {},
19
+ },
20
+ {
21
+ name: "Table Row",
22
+ tag: "TableRow",
23
+ category: COMPONENT_TYPES.container,
24
+ stylesPanelSections: [
25
+ StylesPanelSections.Background,
26
+ StylesPanelSections.Borders,
27
+ StylesPanelSections.Size,
28
+ StylesPanelSections.MarginsAndPaddings,
29
+ StylesPanelSections.Position,
30
+ StylesPanelSections.Effects,
31
+ ],
32
+ layout: {
33
+ paddingLeft: 16,
34
+ paddingRight: 16,
35
+ borderBottomWidth: 1,
36
+ borderStyle: "solid",
37
+ },
38
+ props: {},
39
+ },
40
+ {
41
+ name: "Table Cell",
42
+ tag: "TableCell",
43
+ category: COMPONENT_TYPES.container,
44
+ layout: {
45
+ paddingTop: 16,
46
+ paddingBottom: 16,
47
+ paddingLeft: 8,
48
+ paddingRight: 8,
49
+ },
50
+ stylesPanelSections: [
51
+ StylesPanelSections.Typography,
52
+ StylesPanelSections.Background,
53
+ StylesPanelSections.Borders,
54
+ StylesPanelSections.Size,
55
+ StylesPanelSections.MarginsAndPaddings,
56
+ StylesPanelSections.Position,
57
+ StylesPanelSections.Effects,
58
+ ],
59
+ props: {
60
+ numeric: createBoolProp({
61
+ label: "Is Numeric Cell?",
62
+ description: "Does the cell contain a numeric value?",
63
+ group: GROUPS.data,
64
+ }),
65
+ value: createTextProp({
66
+ label: "Cell Value",
67
+ description: "Table Cell Value",
68
+ group: GROUPS.data,
69
+ }),
70
+ },
71
+ },
72
+ {
73
+ name: "Table Header",
74
+ tag: "TableHeader",
75
+ category: COMPONENT_TYPES.container,
76
+ stylesPanelSections: [
77
+ StylesPanelSections.Background,
78
+ StylesPanelSections.Borders,
79
+ StylesPanelSections.Size,
80
+ StylesPanelSections.MarginsAndPaddings,
81
+ StylesPanelSections.Position,
82
+ StylesPanelSections.Effects,
83
+ ],
84
+ layout: {
85
+ paddingLeft: 16,
86
+ paddingRight: 16,
87
+ borderBottomWidth: 1,
88
+ borderStyle: "solid",
89
+ backgroundColor: "#EFEFEF",
90
+ },
91
+ props: {},
92
+ },
93
+ {
94
+ name: "Table Title",
95
+ tag: "TableTitle",
96
+ category: COMPONENT_TYPES.container,
97
+ stylesPanelSections: [
98
+ StylesPanelSections.Typography,
99
+ StylesPanelSections.Background,
100
+ StylesPanelSections.Borders,
101
+ StylesPanelSections.Size,
102
+ StylesPanelSections.MarginsAndPaddings,
103
+ StylesPanelSections.Position,
104
+ StylesPanelSections.Effects,
105
+ ],
106
+ layout: {
107
+ fontSize: 14,
108
+ paddingTop: 16,
109
+ paddingBottom: 16,
110
+ paddingLeft: 8,
111
+ paddingRight: 8,
112
+ },
113
+ props: {
114
+ numeric: createBoolProp({
115
+ label: "Is Numeric Cell?",
116
+ description: "Does the cell contain a numeric value?",
117
+ group: GROUPS.data,
118
+ }),
119
+ value: createTextProp({
120
+ label: "Cell Value",
121
+ description: "Table Cell Value",
122
+ group: GROUPS.data,
123
+ }),
124
+ isAscending: createBoolProp({
125
+ label: "Is Ascending?",
126
+ description: "Does the cell contain a numeric value?",
127
+ group: GROUPS.data,
128
+ }),
129
+ numberOfLines: createNumberProp({
130
+ label: "Number of Lines",
131
+ description: "Number of Lines",
132
+ group: GROUPS.basic,
133
+ }),
134
+ },
135
+ },
136
+ ];
@@ -0,0 +1,144 @@
1
+ import {
2
+ COMPONENT_TYPES,
3
+ GROUPS,
4
+ createBoolProp,
5
+ createTextProp,
6
+ createNumberProp,
7
+ StylesPanelSections,
8
+ } from "@draftbit/types";
9
+
10
+ export const SEED_DATA = [
11
+ {
12
+ name: "Table",
13
+ tag: "Table",
14
+ category: COMPONENT_TYPES.container,
15
+ stylesPanelSections: [
16
+ StylesPanelSections.Background,
17
+ StylesPanelSections.Borders,
18
+ StylesPanelSections.Size,
19
+ StylesPanelSections.MarginsAndPaddings,
20
+ StylesPanelSections.Position,
21
+ StylesPanelSections.Effects,
22
+ ],
23
+ layout: {
24
+ width: "100%",
25
+ },
26
+ props: {},
27
+ },
28
+ {
29
+ name: "Table Row",
30
+ tag: "TableRow",
31
+ category: COMPONENT_TYPES.container,
32
+ stylesPanelSections: [
33
+ StylesPanelSections.Background,
34
+ StylesPanelSections.Borders,
35
+ StylesPanelSections.Size,
36
+ StylesPanelSections.MarginsAndPaddings,
37
+ StylesPanelSections.Position,
38
+ StylesPanelSections.Effects,
39
+ ],
40
+ layout: {
41
+ paddingLeft: 16,
42
+ paddingRight: 16,
43
+ borderBottomWidth: 1,
44
+ borderStyle: "solid",
45
+ },
46
+ props: {},
47
+ },
48
+ {
49
+ name: "Table Cell",
50
+ tag: "TableCell",
51
+ category: COMPONENT_TYPES.container,
52
+ layout: {
53
+ paddingTop: 16,
54
+ paddingBottom: 16,
55
+ paddingLeft: 8,
56
+ paddingRight: 8,
57
+ },
58
+ stylesPanelSections: [
59
+ StylesPanelSections.Typography,
60
+ StylesPanelSections.Background,
61
+ StylesPanelSections.Borders,
62
+ StylesPanelSections.Size,
63
+ StylesPanelSections.MarginsAndPaddings,
64
+ StylesPanelSections.Position,
65
+ StylesPanelSections.Effects,
66
+ ],
67
+ props: {
68
+ numeric: createBoolProp({
69
+ label: "Is Numeric Cell?",
70
+ description: "Does the cell contain a numeric value?",
71
+ group: GROUPS.data,
72
+ }),
73
+ value: createTextProp({
74
+ label: "Cell Value",
75
+ description: "Table Cell Value",
76
+ group: GROUPS.data,
77
+ }),
78
+ },
79
+ },
80
+ {
81
+ name: "Table Header",
82
+ tag: "TableHeader",
83
+ category: COMPONENT_TYPES.container,
84
+ stylesPanelSections: [
85
+ StylesPanelSections.Background,
86
+ StylesPanelSections.Borders,
87
+ StylesPanelSections.Size,
88
+ StylesPanelSections.MarginsAndPaddings,
89
+ StylesPanelSections.Position,
90
+ StylesPanelSections.Effects,
91
+ ],
92
+ layout: {
93
+ paddingLeft: 16,
94
+ paddingRight: 16,
95
+ borderBottomWidth: 1,
96
+ borderStyle: "solid",
97
+ backgroundColor: "#EFEFEF",
98
+ },
99
+ props: {},
100
+ },
101
+ {
102
+ name: "Table Title",
103
+ tag: "TableTitle",
104
+ category: COMPONENT_TYPES.container,
105
+ stylesPanelSections: [
106
+ StylesPanelSections.Typography,
107
+ StylesPanelSections.Background,
108
+ StylesPanelSections.Borders,
109
+ StylesPanelSections.Size,
110
+ StylesPanelSections.MarginsAndPaddings,
111
+ StylesPanelSections.Position,
112
+ StylesPanelSections.Effects,
113
+ ],
114
+ layout: {
115
+ fontSize: 14,
116
+ paddingTop: 16,
117
+ paddingBottom: 16,
118
+ paddingLeft: 8,
119
+ paddingRight: 8,
120
+ },
121
+ props: {
122
+ numeric: createBoolProp({
123
+ label: "Is Numeric Cell?",
124
+ description: "Does the cell contain a numeric value?",
125
+ group: GROUPS.data,
126
+ }),
127
+ value: createTextProp({
128
+ label: "Cell Value",
129
+ description: "Table Cell Value",
130
+ group: GROUPS.data,
131
+ }),
132
+ isAscending: createBoolProp({
133
+ label: "Is Ascending?",
134
+ description: "Does the cell contain a numeric value?",
135
+ group: GROUPS.data,
136
+ }),
137
+ numberOfLines: createNumberProp({
138
+ label: "Number of Lines",
139
+ description: "Number of Lines",
140
+ group: GROUPS.basic,
141
+ }),
142
+ },
143
+ },
144
+ ];
package/src/utilities.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { StyleSheet } from "react-native";
2
- import { isString, isNumber, pick, pickBy, identity } from "lodash";
2
+ import { isString, isNumber, pick, pickBy, identity, omitBy, isNil, } from "lodash";
3
3
  export function extractStyles(style) {
4
4
  const { color, fontFamily, fontWeight, fontSize, lineHeight, letterSpacing, textTransform, textAlign, textDecorationLine, textDecorationColor, textDecorationStyle, ...viewStyles } = StyleSheet.flatten(style || {});
5
5
  const textStyles = {
@@ -15,7 +15,10 @@ export function extractStyles(style) {
15
15
  textDecorationColor,
16
16
  textDecorationStyle,
17
17
  };
18
- return { viewStyles, textStyles };
18
+ return {
19
+ viewStyles: omitBy(viewStyles, isNil),
20
+ textStyles: omitBy(textStyles, isNil),
21
+ };
19
22
  }
20
23
  export const borderStyleNames = [
21
24
  "borderRadius",
package/src/utilities.ts CHANGED
@@ -1,5 +1,13 @@
1
1
  import { StyleSheet, StyleProp, TextStyle } from "react-native";
2
- import { isString, isNumber, pick, pickBy, identity } from "lodash";
2
+ import {
3
+ isString,
4
+ isNumber,
5
+ pick,
6
+ pickBy,
7
+ identity,
8
+ omitBy,
9
+ isNil,
10
+ } from "lodash";
3
11
 
4
12
  export function extractStyles(style: StyleProp<any>) {
5
13
  const {
@@ -31,7 +39,10 @@ export function extractStyles(style: StyleProp<any>) {
31
39
  textDecorationStyle,
32
40
  };
33
41
 
34
- return { viewStyles, textStyles };
42
+ return {
43
+ viewStyles: omitBy(viewStyles, isNil),
44
+ textStyles: omitBy(textStyles, isNil),
45
+ };
35
46
  }
36
47
 
37
48
  export const borderStyleNames = [