@draftbit/core 46.10.3-6f5759.2 → 46.10.3-93b2ea.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 (74) hide show
  1. package/lib/commonjs/components/Row.js +73 -0
  2. package/lib/commonjs/components/RowBodyIcon.js +45 -0
  3. package/lib/commonjs/components/RowHeadlineImageCaption.js +45 -0
  4. package/lib/commonjs/components/RowHeadlineImageIcon.js +51 -0
  5. package/lib/commonjs/components/TabView/TabView.js +7 -13
  6. package/lib/commonjs/components/Table/Table.js +123 -0
  7. package/lib/commonjs/components/Table/TableCell.js +49 -0
  8. package/lib/commonjs/components/Table/TableCommon.js +30 -0
  9. package/lib/commonjs/components/Table/TableRow.js +61 -0
  10. package/lib/commonjs/components/Table/index.js +27 -0
  11. package/lib/commonjs/index.js +40 -0
  12. package/lib/commonjs/mappings/Table.js +140 -0
  13. package/lib/module/components/Row.js +63 -0
  14. package/lib/module/components/RowBodyIcon.js +35 -0
  15. package/lib/module/components/RowHeadlineImageCaption.js +35 -0
  16. package/lib/module/components/RowHeadlineImageIcon.js +41 -0
  17. package/lib/module/components/Table/Table.js +114 -0
  18. package/lib/module/components/Table/TableCell.js +41 -0
  19. package/lib/module/components/Table/TableCommon.js +21 -0
  20. package/lib/module/components/Table/TableRow.js +53 -0
  21. package/lib/module/components/Table/index.js +3 -0
  22. package/lib/module/index.js +4 -0
  23. package/lib/module/mappings/Table.js +133 -0
  24. package/lib/typescript/src/components/Row.d.ts +21 -0
  25. package/lib/typescript/src/components/Row.d.ts.map +1 -0
  26. package/lib/typescript/src/components/RowBodyIcon.d.ts +16 -0
  27. package/lib/typescript/src/components/RowBodyIcon.d.ts.map +1 -0
  28. package/lib/typescript/src/components/RowHeadlineImageCaption.d.ts +16 -0
  29. package/lib/typescript/src/components/RowHeadlineImageCaption.d.ts.map +1 -0
  30. package/lib/typescript/src/components/RowHeadlineImageIcon.d.ts +18 -0
  31. package/lib/typescript/src/components/RowHeadlineImageIcon.d.ts.map +1 -0
  32. package/lib/typescript/src/components/Table/Table.d.ts +19 -0
  33. package/lib/typescript/src/components/Table/Table.d.ts.map +1 -0
  34. package/lib/typescript/src/components/Table/TableCell.d.ts +9 -0
  35. package/lib/typescript/src/components/Table/TableCell.d.ts.map +1 -0
  36. package/lib/typescript/src/components/Table/TableCommon.d.ts +20 -0
  37. package/lib/typescript/src/components/Table/TableCommon.d.ts.map +1 -0
  38. package/lib/typescript/src/components/Table/TableRow.d.ts +14 -0
  39. package/lib/typescript/src/components/Table/TableRow.d.ts.map +1 -0
  40. package/lib/typescript/src/components/Table/index.d.ts +4 -0
  41. package/lib/typescript/src/components/Table/index.d.ts.map +1 -0
  42. package/lib/typescript/src/index.d.ts +4 -0
  43. package/lib/typescript/src/index.d.ts.map +1 -1
  44. package/lib/typescript/src/mappings/Table.d.ts +337 -0
  45. package/lib/typescript/src/mappings/Table.d.ts.map +1 -0
  46. package/package.json +3 -3
  47. package/src/components/Row.js +48 -0
  48. package/src/components/Row.tsx +108 -0
  49. package/src/components/RowBodyIcon.js +8 -0
  50. package/src/components/RowBodyIcon.tsx +47 -0
  51. package/src/components/RowHeadlineImageCaption.js +12 -0
  52. package/src/components/RowHeadlineImageCaption.tsx +49 -0
  53. package/src/components/RowHeadlineImageIcon.js +14 -0
  54. package/src/components/RowHeadlineImageIcon.tsx +61 -0
  55. package/src/components/Table/Table.js +93 -0
  56. package/src/components/Table/Table.tsx +176 -0
  57. package/src/components/Table/TableCell.js +31 -0
  58. package/src/components/Table/TableCell.tsx +63 -0
  59. package/src/components/Table/TableCommon.js +12 -0
  60. package/src/components/Table/TableCommon.ts +40 -0
  61. package/src/components/Table/TableRow.js +37 -0
  62. package/src/components/Table/TableRow.tsx +77 -0
  63. package/src/components/Table/index.js +3 -0
  64. package/src/components/Table/index.tsx +3 -0
  65. package/src/index.js +4 -0
  66. package/src/index.tsx +5 -0
  67. package/src/mappings/Table.js +150 -0
  68. package/src/mappings/Table.ts +170 -0
  69. package/lib/commonjs/mappings/NativeBase/Layout.js +0 -107
  70. package/lib/module/mappings/NativeBase/Layout.js +0 -100
  71. package/lib/typescript/src/mappings/NativeBase/Layout.d.ts +0 -117
  72. package/lib/typescript/src/mappings/NativeBase/Layout.d.ts.map +0 -1
  73. package/src/mappings/NativeBase/Layout.js +0 -112
  74. package/src/mappings/NativeBase/Layout.ts +0 -133
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _theming = require("../theming");
10
+ var _Config = _interopRequireDefault(require("./Config"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ const Row = _ref => {
15
+ let {
16
+ titleTypeStyle,
17
+ titleColor,
18
+ subtitleTypeStyle,
19
+ subtitleColor,
20
+ title,
21
+ subtitle,
22
+ multilineSubtitle,
23
+ image,
24
+ right,
25
+ style
26
+ } = _ref;
27
+ return /*#__PURE__*/React.createElement(_reactNative.View, {
28
+ style: [styles.container, {
29
+ padding: 16
30
+ }, style]
31
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
32
+ style: styles.leftContainer
33
+ }, image && /*#__PURE__*/React.createElement(_reactNative.Image, {
34
+ source: typeof image === "string" ? {
35
+ uri: image
36
+ } : image,
37
+ style: {
38
+ marginRight: 12,
39
+ width: subtitle ? _Config.default.rowMultiLineImageSize : _Config.default.rowSingleLineImageSize,
40
+ height: subtitle ? _Config.default.rowMultiLineImageSize : _Config.default.rowSingleLineImageSize
41
+ }
42
+ }), /*#__PURE__*/React.createElement(_reactNative.View, {
43
+ style: styles.textContainer
44
+ }, /*#__PURE__*/React.createElement(_reactNative.Text, {
45
+ style: [titleTypeStyle, {
46
+ color: titleColor
47
+ }],
48
+ numberOfLines: 1
49
+ }, title), subtitle ? /*#__PURE__*/React.createElement(_reactNative.Text, {
50
+ style: [subtitleTypeStyle, {
51
+ color: subtitleColor,
52
+ marginTop: 4
53
+ }],
54
+ numberOfLines: multilineSubtitle ? undefined : 1
55
+ }, subtitle) : null)), right && right());
56
+ };
57
+ const styles = _reactNative.StyleSheet.create({
58
+ leftContainer: {
59
+ flexDirection: "row",
60
+ flex: 1
61
+ },
62
+ container: {
63
+ flexDirection: "row",
64
+ justifyContent: "space-between",
65
+ alignItems: "center"
66
+ },
67
+ textContainer: {
68
+ flex: 1,
69
+ justifyContent: "center"
70
+ }
71
+ });
72
+ var _default = (0, _theming.withTheme)(Row);
73
+ exports.default = _default;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _theming = require("../theming");
9
+ var _Row = _interopRequireDefault(require("./Row"));
10
+ var _Config = _interopRequireDefault(require("./Config"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ const RowBodyIcon = _ref => {
15
+ let {
16
+ Icon,
17
+ title,
18
+ subtitle,
19
+ icon,
20
+ style,
21
+ theme: {
22
+ colors,
23
+ typography
24
+ }
25
+ } = _ref;
26
+ return /*#__PURE__*/React.createElement(_Row.default, {
27
+ titleTypeStyle: typography.body1,
28
+ titleColor: colors.medium,
29
+ subtitleTypeStyle: typography.subtitle2,
30
+ subtitleColor: colors.light,
31
+ title: title,
32
+ subtitle: subtitle,
33
+ right: () => /*#__PURE__*/React.createElement(Icon, {
34
+ name: icon,
35
+ size: _Config.default.rowSingleLineIconSize,
36
+ color: colors.light,
37
+ style: {
38
+ marginLeft: 16
39
+ }
40
+ }),
41
+ style: style
42
+ });
43
+ };
44
+ var _default = (0, _theming.withTheme)(RowBodyIcon);
45
+ exports.default = _default;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _theming = require("../theming");
10
+ var _Row = _interopRequireDefault(require("./Row"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ const RowHeadlineImageCaption = _ref => {
15
+ let {
16
+ title,
17
+ subtitle,
18
+ caption,
19
+ image,
20
+ style,
21
+ theme: {
22
+ colors,
23
+ typography
24
+ }
25
+ } = _ref;
26
+ return /*#__PURE__*/React.createElement(_Row.default, {
27
+ titleTypeStyle: typography.headline6,
28
+ titleColor: colors.strong,
29
+ subtitleTypeStyle: typography.body2,
30
+ subtitleColor: colors.medium,
31
+ title: title,
32
+ subtitle: subtitle,
33
+ image: image,
34
+ right: () => /*#__PURE__*/React.createElement(_reactNative.Text, {
35
+ style: {
36
+ ...typography.caption,
37
+ color: colors.strong,
38
+ marginLeft: 16
39
+ }
40
+ }, caption),
41
+ style: style
42
+ });
43
+ };
44
+ var _default = (0, _theming.withTheme)(RowHeadlineImageCaption);
45
+ exports.default = _default;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _theming = require("../theming");
9
+ var _Row = _interopRequireDefault(require("./Row"));
10
+ var _Config = _interopRequireDefault(require("./Config"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ const RowHeadlineImageIcon = _ref => {
15
+ let {
16
+ Icon,
17
+ icon,
18
+ title,
19
+ image,
20
+ subtitle,
21
+ multilineSubtitle = false,
22
+ style,
23
+ theme: {
24
+ colors,
25
+ typography
26
+ }
27
+ } = _ref;
28
+ return /*#__PURE__*/React.createElement(_Row.default, {
29
+ titleTypeStyle: typography.headline6,
30
+ titleColor: colors.strong,
31
+ subtitleTypeStyle: typography.body2,
32
+ subtitleColor: colors.medium,
33
+ title: title,
34
+ subtitle: subtitle,
35
+ multilineSubtitle: multilineSubtitle,
36
+ image: image,
37
+ right: () => /*#__PURE__*/React.createElement(Icon, {
38
+ name: icon,
39
+ size: multilineSubtitle ? _Config.default.rowMultiLineIconSize : _Config.default.rowSingleLineIconSize,
40
+ color: colors.light,
41
+ style: {
42
+ marginLeft: 16,
43
+ alignSelf: multilineSubtitle ? "flex-start" : "center",
44
+ marginTop: multilineSubtitle ? 4 : 0
45
+ }
46
+ }),
47
+ style: style
48
+ });
49
+ };
50
+ var _default = (0, _theming.withTheme)(RowHeadlineImageIcon);
51
+ exports.default = _default;
@@ -10,6 +10,7 @@ var _theming = require("../../theming");
10
10
  var _utilities = require("../../utilities");
11
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
12
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
13
14
  const TabViewComponent = _ref => {
14
15
  let {
15
16
  Icon,
@@ -35,11 +36,13 @@ const TabViewComponent = _ref => {
35
36
  textStyles,
36
37
  viewStyles
37
38
  } = (0, _utilities.extractStyles)(style);
39
+
38
40
  //Check type of child using props
39
41
  //Regular '.type' cannot work because Draftbit strips the type in Draft view
40
42
  const instanceOfTabViewItemProps = object => {
41
43
  return "title" in object;
42
44
  };
45
+
43
46
  //Populate routes and scenes based on children
44
47
  React.useEffect(() => {
45
48
  const newRoutes = [];
@@ -65,8 +68,7 @@ const TabViewComponent = _ref => {
65
68
  }
66
69
  };
67
70
  const renderTabBar = props => {
68
- return /*#__PURE__*/React.createElement(_reactNativeTabView.TabBar, {
69
- ...props,
71
+ return /*#__PURE__*/React.createElement(_reactNativeTabView.TabBar, _extends({}, props, {
70
72
  activeColor: activeColor || theme.colors.primary,
71
73
  inactiveColor: inactiveColor || theme.colors.divider,
72
74
  pressColor: pressColor || theme.colors.primary,
@@ -80,7 +82,7 @@ const TabViewComponent = _ref => {
80
82
  route,
81
83
  color
82
84
  } = _ref2;
83
- return (route === null || route === void 0 ? void 0 : route.icon) ? /*#__PURE__*/React.createElement(Icon, {
85
+ return route !== null && route !== void 0 && route.icon ? /*#__PURE__*/React.createElement(Icon, {
84
86
  name: route.icon,
85
87
  color: color,
86
88
  size: 16
@@ -89,8 +91,9 @@ const TabViewComponent = _ref => {
89
91
  style: {
90
92
  backgroundColor: tabsBackgroundColor || theme.colors.background
91
93
  }
92
- });
94
+ }));
93
95
  };
96
+
94
97
  //Cannot render TabView without at least one tab
95
98
  if (!routes.length) {
96
99
  return /*#__PURE__*/React.createElement(React.Fragment, null);
@@ -110,13 +113,4 @@ const TabViewComponent = _ref => {
110
113
  });
111
114
  };
112
115
  var _default = (0, _theming.withTheme)(TabViewComponent);
113
- exports.default = _default; renderScene: (0, _reactNativeTabView.SceneMap)(tabScenes),
114
- renderTabBar: renderTabBar,
115
- onIndexChange: indexChangeHandler,
116
- tabBarPosition: tabBarPosition,
117
- keyboardDismissMode: keyboardDismissMode,
118
- swipeEnabled: swipeEnabled
119
- });
120
- };
121
- var _default = (0, _theming.withTheme)(TabViewComponent);
122
116
  exports.default = _default;
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _theming = require("../../theming");
10
+ var _TableCommon = require("./TableCommon");
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ const Table = _ref => {
13
+ let {
14
+ theme,
15
+ borderWidth = 1,
16
+ borderColor = theme.colors.divider,
17
+ borderStyle = "solid",
18
+ drawTopBorder = true,
19
+ drawBottomBorder = false,
20
+ drawStartBorder = false,
21
+ drawEndBorder = false,
22
+ cellVerticalPadding = 10,
23
+ cellHorizontalPadding = 10,
24
+ data,
25
+ keyExtractor,
26
+ renderItem,
27
+ children: childrenProp,
28
+ style,
29
+ ...rest
30
+ } = _ref;
31
+ //Both 'renderItem' and 'data' are optional to allow direct children. But if one is included, both need to be included
32
+ if (data && !renderItem || renderItem && !data) {
33
+ throw new Error("'renderItem' and 'data' need to both be provided to render from 'data'. Either remove them entirley or include both");
34
+ }
35
+ if (data && renderItem && childrenProp) {
36
+ console.warn("'children' of Table ignored due to usage of 'data' and 'renderItem'");
37
+ }
38
+ const isTableHeader = _react.default.useCallback(object => {
39
+ return object.isTableHeader;
40
+ }, []);
41
+ const isRenderItem = data && renderItem;
42
+
43
+ //Uses 'renderItem' and 'data' to create an array of children
44
+ const dataAsChildren = _react.default.useMemo(() => {
45
+ if (!isRenderItem) return [];
46
+ return data.map((item, index) => {
47
+ const component = renderItem({
48
+ item,
49
+ index
50
+ });
51
+ if (!component) {
52
+ return null;
53
+ }
54
+ const key = keyExtractor ? keyExtractor(item, index) : index.toString();
55
+ return /*#__PURE__*/_react.default.cloneElement(component, {
56
+ key
57
+ });
58
+ });
59
+ }, [data, renderItem, keyExtractor, isRenderItem]);
60
+ const children = isRenderItem ? dataAsChildren : _react.default.Children.toArray(childrenProp);
61
+ const validChildren = _react.default.useMemo(() => children.filter(item => /*#__PURE__*/_react.default.isValidElement(item)), [children]);
62
+ const childrenWithoutHeader = _react.default.useMemo(() => {
63
+ const flattenedWithoutNestedHeaders = validChildren.map(item => {
64
+ const nestedChildren = _react.default.Children.toArray(item.props.children);
65
+ //Header can be nested in React.Fragment when in renderItem
66
+ const nestedHeaders = nestedChildren.filter(child => isTableHeader(child.props));
67
+ if (nestedHeaders !== null && nestedHeaders !== void 0 && nestedHeaders.length) {
68
+ //New element excluding header children
69
+ return /*#__PURE__*/_react.default.cloneElement(item, {
70
+ children: nestedChildren.filter(child => !isTableHeader(child.props))
71
+ });
72
+ }
73
+ return item;
74
+ });
75
+ return flattenedWithoutNestedHeaders.filter(item => !isTableHeader(item.props));
76
+ }, [validChildren, isTableHeader]);
77
+ const header = _react.default.useMemo(() => {
78
+ const flattenedPossibleHeaders = validChildren.map(item => {
79
+ const nestedChildren = _react.default.Children.toArray(item.props.children);
80
+ //Header can be nested in React.Fragment when in renderItem
81
+ const nestedHeaders = nestedChildren.filter(child => isTableHeader(child.props));
82
+ if (nestedHeaders !== null && nestedHeaders !== void 0 && nestedHeaders.length) {
83
+ return nestedHeaders[0];
84
+ }
85
+ return item;
86
+ });
87
+ const allHeaders = flattenedPossibleHeaders.filter(item => isTableHeader(item.props));
88
+ if (allHeaders.length) {
89
+ return allHeaders[0]; //Only 1 header taken
90
+ }
91
+
92
+ return null;
93
+ }, [validChildren, isTableHeader]);
94
+ const contextValue = {
95
+ borderColor,
96
+ borderStyle,
97
+ borderWidth,
98
+ cellHorizontalPadding,
99
+ cellVerticalPadding
100
+ };
101
+ const borderViewStyle = (0, _TableCommon.generateBorderStyles)({
102
+ borderColor,
103
+ borderWidth,
104
+ borderStyle,
105
+ drawTopBorder,
106
+ drawBottomBorder,
107
+ drawStartBorder,
108
+ drawEndBorder
109
+ });
110
+ return /*#__PURE__*/_react.default.createElement(_TableCommon.TableStyleContext.Provider, {
111
+ value: contextValue
112
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
113
+ style: [styles.container, borderViewStyle, style]
114
+ }, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, header), /*#__PURE__*/_react.default.createElement(_reactNative.ScrollView, rest, childrenWithoutHeader)));
115
+ };
116
+ const styles = _reactNative.StyleSheet.create({
117
+ container: {
118
+ flex: 1
119
+ }
120
+ });
121
+ var _default = (0, _theming.withTheme)(Table);
122
+ exports.default = _default;
123
+ exports.default = _default;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _TableCommon = require("./TableCommon");
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ const TableCell = _ref => {
12
+ let {
13
+ borderWidth,
14
+ borderColor,
15
+ borderStyle,
16
+ drawTopBorder = false,
17
+ drawBottomBorder = false,
18
+ drawStartBorder = false,
19
+ drawEndBorder = true,
20
+ cellVerticalPadding,
21
+ cellHorizontalPadding,
22
+ children,
23
+ style
24
+ } = _ref;
25
+ const parentContextValue = _react.default.useContext(_TableCommon.TableStyleContext);
26
+ const borderViewStyle = (0, _TableCommon.generateBorderStyles)({
27
+ borderColor: borderColor || parentContextValue.borderColor,
28
+ borderWidth: borderWidth || parentContextValue.borderWidth,
29
+ borderStyle: borderStyle || parentContextValue.borderStyle,
30
+ drawTopBorder,
31
+ drawBottomBorder,
32
+ drawStartBorder,
33
+ drawEndBorder
34
+ });
35
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
36
+ style: [styles.cellContainer, borderViewStyle, {
37
+ paddingVertical: cellVerticalPadding || parentContextValue.cellVerticalPadding,
38
+ paddingHorizontal: cellHorizontalPadding || parentContextValue.cellHorizontalPadding
39
+ }, style]
40
+ }, children);
41
+ };
42
+ const styles = _reactNative.StyleSheet.create({
43
+ cellContainer: {
44
+ flex: 1,
45
+ flexDirection: "row"
46
+ }
47
+ });
48
+ var _default = TableCell;
49
+ exports.default = _default;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TableStyleContext = void 0;
7
+ exports.generateBorderStyles = generateBorderStyles;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ const TableStyleContext = /*#__PURE__*/_react.default.createContext({});
11
+ exports.TableStyleContext = TableStyleContext;
12
+ function generateBorderStyles(_ref) {
13
+ let {
14
+ borderColor,
15
+ borderWidth,
16
+ borderStyle,
17
+ drawTopBorder,
18
+ drawBottomBorder,
19
+ drawStartBorder,
20
+ drawEndBorder
21
+ } = _ref;
22
+ return {
23
+ borderColor,
24
+ borderStyle,
25
+ borderTopWidth: drawTopBorder ? borderWidth : 0,
26
+ borderBottomWidth: drawBottomBorder ? borderWidth : 0,
27
+ borderStartWidth: drawStartBorder ? borderWidth : 0,
28
+ borderEndWidth: drawEndBorder ? borderWidth : 0
29
+ };
30
+ }
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _TableCommon = require("./TableCommon");
10
+ var _theming = require("../../theming");
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ const TableRow = _ref => {
13
+ let {
14
+ borderWidth,
15
+ borderColor,
16
+ borderStyle,
17
+ drawTopBorder = false,
18
+ drawBottomBorder = true,
19
+ drawStartBorder = true,
20
+ drawEndBorder = false,
21
+ cellVerticalPadding,
22
+ cellHorizontalPadding,
23
+ isTableHeader = false,
24
+ children,
25
+ style,
26
+ theme
27
+ } = _ref;
28
+ const parentContextValue = _react.default.useContext(_TableCommon.TableStyleContext);
29
+
30
+ //Create context to use and pass to children based on own props or fall back to parent provided context
31
+ const contextValue = {
32
+ borderColor: borderColor || parentContextValue.borderColor,
33
+ borderStyle: borderStyle || parentContextValue.borderStyle,
34
+ borderWidth: borderWidth || parentContextValue.borderWidth,
35
+ cellHorizontalPadding: cellHorizontalPadding || parentContextValue.cellHorizontalPadding,
36
+ cellVerticalPadding: cellVerticalPadding || parentContextValue.cellVerticalPadding
37
+ };
38
+ const borderViewStyle = (0, _TableCommon.generateBorderStyles)({
39
+ borderColor: contextValue.borderColor,
40
+ borderWidth: contextValue.borderWidth,
41
+ borderStyle: contextValue.borderStyle,
42
+ drawTopBorder,
43
+ drawBottomBorder,
44
+ drawStartBorder,
45
+ drawEndBorder
46
+ });
47
+ return /*#__PURE__*/_react.default.createElement(_TableCommon.TableStyleContext.Provider, {
48
+ value: contextValue
49
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
50
+ style: [borderViewStyle, isTableHeader ? {
51
+ backgroundColor: theme.colors.primary
52
+ } : {}, style, styles.cellsContainer]
53
+ }, children));
54
+ };
55
+ const styles = _reactNative.StyleSheet.create({
56
+ cellsContainer: {
57
+ flexDirection: "row"
58
+ }
59
+ });
60
+ var _default = (0, _theming.withTheme)(TableRow);
61
+ exports.default = _default;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "Table", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Table.default;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "TableCell", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _TableCell.default;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "TableRow", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _TableRow.default;
22
+ }
23
+ });
24
+ var _Table = _interopRequireDefault(require("./Table"));
25
+ var _TableRow = _interopRequireDefault(require("./TableRow"));
26
+ var _TableCell = _interopRequireDefault(require("./TableCell"));
27
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -255,6 +255,24 @@ Object.defineProperty(exports, "Row", {
255
255
  return _Layout.Row;
256
256
  }
257
257
  });
258
+ Object.defineProperty(exports, "RowBodyIcon", {
259
+ enumerable: true,
260
+ get: function () {
261
+ return _RowBodyIcon.default;
262
+ }
263
+ });
264
+ Object.defineProperty(exports, "RowHeadlineImageCaption", {
265
+ enumerable: true,
266
+ get: function () {
267
+ return _RowHeadlineImageCaption.default;
268
+ }
269
+ });
270
+ Object.defineProperty(exports, "RowHeadlineImageIcon", {
271
+ enumerable: true,
272
+ get: function () {
273
+ return _RowHeadlineImageIcon.default;
274
+ }
275
+ });
258
276
  Object.defineProperty(exports, "SVG", {
259
277
  enumerable: true,
260
278
  get: function () {
@@ -351,6 +369,24 @@ Object.defineProperty(exports, "TabViewItem", {
351
369
  return _TabView.TabViewItem;
352
370
  }
353
371
  });
372
+ Object.defineProperty(exports, "Table", {
373
+ enumerable: true,
374
+ get: function () {
375
+ return _Table.Table;
376
+ }
377
+ });
378
+ Object.defineProperty(exports, "TableCell", {
379
+ enumerable: true,
380
+ get: function () {
381
+ return _Table.TableCell;
382
+ }
383
+ });
384
+ Object.defineProperty(exports, "TableRow", {
385
+ enumerable: true,
386
+ get: function () {
387
+ return _Table.TableRow;
388
+ }
389
+ });
354
390
  Object.defineProperty(exports, "TextField", {
355
391
  enumerable: true,
356
392
  get: function () {
@@ -437,10 +473,14 @@ var _TabView = require("./components/TabView");
437
473
  var _Markdown = _interopRequireDefault(require("./components/Markdown"));
438
474
  var _BottomSheet = require("./components/BottomSheet");
439
475
  var _YoutubePlayer = require("./components/YoutubePlayer");
476
+ var _Table = require("./components/Table");
440
477
  var _DatePicker = _interopRequireDefault(require("./components/DatePicker/DatePicker"));
441
478
  var _Picker = _interopRequireDefault(require("./components/Picker/Picker"));
442
479
  var _ProgressBar = _interopRequireDefault(require("./components/ProgressBar"));
443
480
  var _ProgressCircle = _interopRequireDefault(require("./components/ProgressCircle"));
481
+ var _RowBodyIcon = _interopRequireDefault(require("./components/RowBodyIcon"));
482
+ var _RowHeadlineImageCaption = _interopRequireDefault(require("./components/RowHeadlineImageCaption"));
483
+ var _RowHeadlineImageIcon = _interopRequireDefault(require("./components/RowHeadlineImageIcon"));
444
484
  var _Slider = _interopRequireDefault(require("./components/Slider"));
445
485
  var _Stepper = _interopRequireDefault(require("./components/Stepper"));
446
486
  var _useAuthState = require("./components/useAuthState");