@draftbit/core 48.0.3-8fa13e.2 → 48.0.3-f1115f.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 (38) hide show
  1. package/lib/src/components/Table/TableCell.d.ts +1 -0
  2. package/lib/src/components/Table/TableCell.js +4 -2
  3. package/lib/src/components/Table/TableCell.js.map +1 -1
  4. package/lib/src/components/Table/TableRow.d.ts +1 -0
  5. package/lib/src/components/Table/TableRow.js +4 -2
  6. package/lib/src/components/Table/TableRow.js.map +1 -1
  7. package/lib/src/index.d.ts +0 -1
  8. package/lib/src/index.js +0 -1
  9. package/lib/src/index.js.map +1 -1
  10. package/lib/tsconfig.tsbuildinfo +1 -1
  11. package/package.json +4 -19
  12. package/src/components/Table/TableCell.js +4 -2
  13. package/src/components/Table/TableCell.js.map +1 -1
  14. package/src/components/Table/TableCell.tsx +8 -2
  15. package/src/components/Table/TableRow.js +4 -2
  16. package/src/components/Table/TableRow.js.map +1 -1
  17. package/src/components/Table/TableRow.tsx +8 -2
  18. package/src/index.js +0 -1
  19. package/src/index.js.map +1 -1
  20. package/src/index.tsx +0 -1
  21. package/lib/src/components/SectionList/SectionHeader.d.ts +0 -15
  22. package/lib/src/components/SectionList/SectionHeader.js +0 -14
  23. package/lib/src/components/SectionList/SectionHeader.js.map +0 -1
  24. package/lib/src/components/SectionList/SectionList.d.ts +0 -20
  25. package/lib/src/components/SectionList/SectionList.js +0 -95
  26. package/lib/src/components/SectionList/SectionList.js.map +0 -1
  27. package/lib/src/components/SectionList/index.d.ts +0 -2
  28. package/lib/src/components/SectionList/index.js +0 -3
  29. package/lib/src/components/SectionList/index.js.map +0 -1
  30. package/src/components/SectionList/SectionHeader.js +0 -14
  31. package/src/components/SectionList/SectionHeader.js.map +0 -1
  32. package/src/components/SectionList/SectionHeader.tsx +0 -37
  33. package/src/components/SectionList/SectionList.js +0 -95
  34. package/src/components/SectionList/SectionList.js.map +0 -1
  35. package/src/components/SectionList/SectionList.tsx +0 -171
  36. package/src/components/SectionList/index.js +0 -3
  37. package/src/components/SectionList/index.js.map +0 -1
  38. package/src/components/SectionList/index.tsx +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@draftbit/core",
3
- "version": "48.0.3-8fa13e.2+8fa13e1",
3
+ "version": "48.0.3-f1115f.2+f1115fe",
4
4
  "description": "Core (non-native) Components",
5
5
  "main": "lib/src/index.js",
6
6
  "types": "lib/src/index.d.ts",
@@ -15,9 +15,7 @@
15
15
  "scripts": {
16
16
  "clean": "rimraf lib",
17
17
  "clean:modules": "rimraf node_modules",
18
- "build": "yarn clean && yarn tsc",
19
- "test": "jest",
20
- "test:coverage": "jest --coverage"
18
+ "build": "yarn clean && yarn tsc"
21
19
  },
22
20
  "keywords": [
23
21
  "react-native",
@@ -41,7 +39,7 @@
41
39
  "dependencies": {
42
40
  "@date-io/date-fns": "^1.3.13",
43
41
  "@draftbit/react-theme-provider": "^2.1.1",
44
- "@draftbit/types": "^48.0.3-8fa13e.2+8fa13e1",
42
+ "@draftbit/types": "^48.0.3-f1115f.2+f1115fe",
45
43
  "@expo/vector-icons": "^13.0.0",
46
44
  "@material-ui/core": "^4.11.0",
47
45
  "@material-ui/pickers": "^3.2.10",
@@ -81,18 +79,5 @@
81
79
  "node_modules/",
82
80
  "lib/"
83
81
  ],
84
- "jest": {
85
- "preset": "react-native",
86
- "setupFiles": [
87
- "./jest-setup.js"
88
- ],
89
- "setupFilesAfterEnv": [
90
- "@testing-library/jest-native/extend-expect"
91
- ],
92
- "testPathIgnorePatterns": [
93
- "lib",
94
- "__mocks__"
95
- ]
96
- },
97
- "gitHead": "8fa13e184a2bd5033b16d22154288b40e0e3a539"
82
+ "gitHead": "f1115fed72e45a2cb2ad1d2ba6dd292e068d8d1c"
98
83
  }
@@ -1,7 +1,8 @@
1
1
  import React from "react";
2
2
  import { View, StyleSheet } from "react-native";
3
3
  import { generateBorderStyles, TableStyleContext, } from "./TableCommon";
4
- const TableCell = ({ borderWidth, borderColor, borderStyle, drawTopBorder = false, drawBottomBorder = false, drawStartBorder = false, drawEndBorder = true, cellVerticalPadding, cellHorizontalPadding, children, style, }) => {
4
+ import Pressable from "../Pressable";
5
+ const TableCell = ({ borderWidth, borderColor, borderStyle, drawTopBorder = false, drawBottomBorder = false, drawStartBorder = false, drawEndBorder = true, cellVerticalPadding, cellHorizontalPadding, children, onPress, style, }) => {
5
6
  const parentContextValue = React.useContext(TableStyleContext);
6
7
  const borderViewStyle = generateBorderStyles({
7
8
  borderColor: borderColor || parentContextValue.borderColor,
@@ -12,7 +13,8 @@ const TableCell = ({ borderWidth, borderColor, borderStyle, drawTopBorder = fals
12
13
  drawStartBorder,
13
14
  drawEndBorder,
14
15
  });
15
- return (React.createElement(View, { style: [
16
+ const ContainerComponent = onPress ? Pressable : View;
17
+ return (React.createElement(ContainerComponent, { onPress: onPress, style: [
16
18
  styles.cellContainer,
17
19
  borderViewStyle,
18
20
  {
@@ -1 +1 @@
1
- {"version":3,"file":"TableCell.js","sourceRoot":"","sources":["TableCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAwB,UAAU,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EACL,oBAAoB,EAEpB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAMvB,MAAM,SAAS,GAA6C,CAAC,EAC3D,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,GAAG,KAAK,EACrB,gBAAgB,GAAG,KAAK,EACxB,eAAe,GAAG,KAAK,EACvB,aAAa,GAAG,IAAI,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,QAAQ,EACR,KAAK,GACN,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAE/D,MAAM,eAAe,GAAG,oBAAoB,CAAC;QAC3C,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,aAAa;QACb,gBAAgB;QAChB,eAAe;QACf,aAAa;KACd,CAAC,CAAC;IACH,OAAO,CACL,oBAAC,IAAI,IACH,KAAK,EAAE;YACL,MAAM,CAAC,aAAa;YACpB,eAAe;YACf;gBACE,eAAe,EACb,mBAAmB,IAAI,kBAAkB,CAAC,mBAAmB;gBAC/D,iBAAiB,EACf,qBAAqB,IAAI,kBAAkB,CAAC,qBAAqB;aACpE;YACD,KAAK;SACN,IAEA,QAAQ,CACJ,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,aAAa,EAAE;QACb,IAAI,EAAE,CAAC;QACP,aAAa,EAAE,KAAK;KACrB;CACF,CAAC,CAAC;AAEH,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"TableCell.js","sourceRoot":"","sources":["TableCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAwB,UAAU,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EACL,oBAAoB,EAEpB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,SAAS,MAAM,cAAc,CAAC;AAOrC,MAAM,SAAS,GAA6C,CAAC,EAC3D,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,GAAG,KAAK,EACrB,gBAAgB,GAAG,KAAK,EACxB,eAAe,GAAG,KAAK,EACvB,aAAa,GAAG,IAAI,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,QAAQ,EACR,OAAO,EACP,KAAK,GACN,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAE/D,MAAM,eAAe,GAAG,oBAAoB,CAAC;QAC3C,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,aAAa;QACb,gBAAgB;QAChB,eAAe;QACf,aAAa;KACd,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,OAAO,CACL,oBAAC,kBAAkB,IACjB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE;YACL,MAAM,CAAC,aAAa;YACpB,eAAe;YACf;gBACE,eAAe,EACb,mBAAmB,IAAI,kBAAkB,CAAC,mBAAmB;gBAC/D,iBAAiB,EACf,qBAAqB,IAAI,kBAAkB,CAAC,qBAAqB;aACpE;YACD,KAAK;SACN,IAEA,QAAQ,CACU,CACtB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,aAAa,EAAE;QACb,IAAI,EAAE,CAAC;QACP,aAAa,EAAE,KAAK;KACrB;CACF,CAAC,CAAC;AAEH,eAAe,SAAS,CAAC"}
@@ -5,8 +5,10 @@ import {
5
5
  TableProps,
6
6
  TableStyleContext,
7
7
  } from "./TableCommon";
8
+ import Pressable from "../Pressable";
8
9
 
9
10
  export interface Props extends TableProps {
11
+ onPress?: () => void;
10
12
  style?: StyleProp<ViewStyle>;
11
13
  }
12
14
 
@@ -21,6 +23,7 @@ const TableCell: React.FC<React.PropsWithChildren<Props>> = ({
21
23
  cellVerticalPadding,
22
24
  cellHorizontalPadding,
23
25
  children,
26
+ onPress,
24
27
  style,
25
28
  }) => {
26
29
  const parentContextValue = React.useContext(TableStyleContext);
@@ -34,8 +37,11 @@ const TableCell: React.FC<React.PropsWithChildren<Props>> = ({
34
37
  drawStartBorder,
35
38
  drawEndBorder,
36
39
  });
40
+
41
+ const ContainerComponent = onPress ? Pressable : View;
37
42
  return (
38
- <View
43
+ <ContainerComponent
44
+ onPress={onPress}
39
45
  style={[
40
46
  styles.cellContainer,
41
47
  borderViewStyle,
@@ -49,7 +55,7 @@ const TableCell: React.FC<React.PropsWithChildren<Props>> = ({
49
55
  ]}
50
56
  >
51
57
  {children}
52
- </View>
58
+ </ContainerComponent>
53
59
  );
54
60
  };
55
61
 
@@ -2,7 +2,8 @@ import React from "react";
2
2
  import { View, StyleSheet } from "react-native";
3
3
  import { generateBorderStyles, TableStyleContext, } from "./TableCommon";
4
4
  import { withTheme } from "../../theming";
5
- const TableRow = ({ borderWidth, borderColor, borderStyle, drawTopBorder = false, drawBottomBorder = true, drawStartBorder = true, drawEndBorder = false, cellVerticalPadding, cellHorizontalPadding, isTableHeader = false, children, style, theme, }) => {
5
+ import Pressable from "../Pressable";
6
+ const TableRow = ({ borderWidth, borderColor, borderStyle, drawTopBorder = false, drawBottomBorder = true, drawStartBorder = true, drawEndBorder = false, cellVerticalPadding, cellHorizontalPadding, isTableHeader = false, children, onPress, style, theme, }) => {
6
7
  const parentContextValue = React.useContext(TableStyleContext);
7
8
  //Create context to use and pass to children based on own props or fall back to parent provided context
8
9
  const contextValue = {
@@ -21,8 +22,9 @@ const TableRow = ({ borderWidth, borderColor, borderStyle, drawTopBorder = false
21
22
  drawStartBorder,
22
23
  drawEndBorder,
23
24
  });
25
+ const ContainerComponent = onPress ? Pressable : View;
24
26
  return (React.createElement(TableStyleContext.Provider, { value: contextValue },
25
- React.createElement(View, { style: [
27
+ React.createElement(ContainerComponent, { onPress: onPress, style: [
26
28
  borderViewStyle,
27
29
  isTableHeader ? { backgroundColor: theme.colors.primary } : {},
28
30
  style,
@@ -1 +1 @@
1
- {"version":3,"file":"TableRow.js","sourceRoot":"","sources":["TableRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAwB,UAAU,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EACL,oBAAoB,EAEpB,iBAAiB,GAElB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAQ1C,MAAM,QAAQ,GAA6C,CAAC,EAC1D,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,GAAG,KAAK,EACrB,gBAAgB,GAAG,IAAI,EACvB,eAAe,GAAG,IAAI,EACtB,aAAa,GAAG,KAAK,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,GAAG,KAAK,EACrB,QAAQ,EACR,KAAK,EACL,KAAK,GACN,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAE/D,uGAAuG;IACvG,MAAM,YAAY,GAAoB;QACpC,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,qBAAqB,EACnB,qBAAqB,IAAI,kBAAkB,CAAC,qBAAqB;QACnE,mBAAmB,EACjB,mBAAmB,IAAI,kBAAkB,CAAC,mBAAmB;KAChE,CAAC;IAEF,MAAM,eAAe,GAAG,oBAAoB,CAAC;QAC3C,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,aAAa;QACb,gBAAgB;QAChB,eAAe;QACf,aAAa;KACd,CAAC,CAAC;IACH,OAAO,CACL,oBAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY;QAC7C,oBAAC,IAAI,IACH,KAAK,EAAE;gBACL,eAAe;gBACf,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;gBAC9D,KAAK;gBACL,MAAM,CAAC,cAAc;aACtB,IAEA,QAAQ,CACJ,CACoB,CAC9B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,cAAc,EAAE;QACd,aAAa,EAAE,KAAK;KACrB;CACF,CAAC,CAAC;AAEH,eAAe,SAAS,CAAC,QAAQ,CAAC,CAAC"}
1
+ {"version":3,"file":"TableRow.js","sourceRoot":"","sources":["TableRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAwB,UAAU,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EACL,oBAAoB,EAEpB,iBAAiB,GAElB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,SAAS,MAAM,cAAc,CAAC;AASrC,MAAM,QAAQ,GAA6C,CAAC,EAC1D,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,GAAG,KAAK,EACrB,gBAAgB,GAAG,IAAI,EACvB,eAAe,GAAG,IAAI,EACtB,aAAa,GAAG,KAAK,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,GAAG,KAAK,EACrB,QAAQ,EACR,OAAO,EACP,KAAK,EACL,KAAK,GACN,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAE/D,uGAAuG;IACvG,MAAM,YAAY,GAAoB;QACpC,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,WAAW;QAC1D,qBAAqB,EACnB,qBAAqB,IAAI,kBAAkB,CAAC,qBAAqB;QACnE,mBAAmB,EACjB,mBAAmB,IAAI,kBAAkB,CAAC,mBAAmB;KAChE,CAAC;IAEF,MAAM,eAAe,GAAG,oBAAoB,CAAC;QAC3C,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,aAAa;QACb,gBAAgB;QAChB,eAAe;QACf,aAAa;KACd,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,OAAO,CACL,oBAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY;QAC7C,oBAAC,kBAAkB,IACjB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE;gBACL,eAAe;gBACf,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;gBAC9D,KAAK;gBACL,MAAM,CAAC,cAAc;aACtB,IAEA,QAAQ,CACU,CACM,CAC9B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,cAAc,EAAE;QACd,aAAa,EAAE,KAAK;KACrB;CACF,CAAC,CAAC;AAEH,eAAe,SAAS,CAAC,QAAQ,CAAC,CAAC"}
@@ -8,8 +8,10 @@ import {
8
8
  } from "./TableCommon";
9
9
  import { Theme } from "../../styles/DefaultTheme";
10
10
  import { withTheme } from "../../theming";
11
+ import Pressable from "../Pressable";
11
12
 
12
13
  export interface Props extends TableProps {
14
+ onPress?: () => void;
13
15
  isTableHeader?: boolean;
14
16
  style?: StyleProp<ViewStyle>;
15
17
  theme: Theme;
@@ -27,6 +29,7 @@ const TableRow: React.FC<React.PropsWithChildren<Props>> = ({
27
29
  cellHorizontalPadding,
28
30
  isTableHeader = false,
29
31
  children,
32
+ onPress,
30
33
  style,
31
34
  theme,
32
35
  }) => {
@@ -52,9 +55,12 @@ const TableRow: React.FC<React.PropsWithChildren<Props>> = ({
52
55
  drawStartBorder,
53
56
  drawEndBorder,
54
57
  });
58
+
59
+ const ContainerComponent = onPress ? Pressable : View;
55
60
  return (
56
61
  <TableStyleContext.Provider value={contextValue}>
57
- <View
62
+ <ContainerComponent
63
+ onPress={onPress}
58
64
  style={[
59
65
  borderViewStyle,
60
66
  isTableHeader ? { backgroundColor: theme.colors.primary } : {},
@@ -63,7 +69,7 @@ const TableRow: React.FC<React.PropsWithChildren<Props>> = ({
63
69
  ]}
64
70
  >
65
71
  {children}
66
- </View>
72
+ </ContainerComponent>
67
73
  </TableStyleContext.Provider>
68
74
  );
69
75
  };
package/src/index.js CHANGED
@@ -35,7 +35,6 @@ export { default as DatePicker } from "./components/DatePicker/DatePicker";
35
35
  export { default as Picker } from "./components/Picker/Picker";
36
36
  export { default as Slider } from "./components/Slider";
37
37
  export { default as Stepper } from "./components/Stepper";
38
- export { SectionList, SectionHeader } from "./components/SectionList";
39
38
  /* Deprecated: Fix or Delete! */
40
39
  export { default as AccordionItem } from "./deprecated-components/AccordionItem";
41
40
  export { default as AvatarEdit } from "./deprecated-components/AvatarEdit";
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":"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"}
package/src/index.tsx CHANGED
@@ -50,7 +50,6 @@ export { default as DatePicker } from "./components/DatePicker/DatePicker";
50
50
  export { default as Picker } from "./components/Picker/Picker";
51
51
  export { default as Slider } from "./components/Slider";
52
52
  export { default as Stepper } from "./components/Stepper";
53
- export { SectionList, SectionHeader } from "./components/SectionList";
54
53
 
55
54
  /* Deprecated: Fix or Delete! */
56
55
  export { default as AccordionItem } from "./deprecated-components/AccordionItem";
@@ -1,15 +0,0 @@
1
- import React from "react";
2
- import { StyleProp, ViewStyle } from "react-native";
3
- import type { Theme } from "../../styles/DefaultTheme";
4
- interface SectionHeaderProps {
5
- style?: StyleProp<ViewStyle>;
6
- }
7
- declare const SectionHeader: React.FC<React.PropsWithChildren<SectionHeaderProps>>;
8
- interface DefaultSectionHeaderProps {
9
- title: string;
10
- theme: Theme;
11
- }
12
- export declare const DefaultSectionHeader: React.ComponentType<import("@draftbit/react-theme-provider").$Without<DefaultSectionHeaderProps, "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<DefaultSectionHeaderProps> & (({ title, theme }: DefaultSectionHeaderProps) => JSX.Element), {}>;
15
- export default SectionHeader;
@@ -1,14 +0,0 @@
1
- import React from "react";
2
- import { View, Text } from "react-native";
3
- import { withTheme } from "../../theming";
4
- const SectionHeader = ({ style, children, }) => React.createElement(View, { style: [style] }, children);
5
- export const DefaultSectionHeader = withTheme(({ title, theme }) => {
6
- return (React.createElement(Text, { testID: "default-section-header", style: {
7
- color: theme.colors.background,
8
- backgroundColor: theme.colors.primary,
9
- fontSize: 16,
10
- padding: 10,
11
- } }, title));
12
- });
13
- export default SectionHeader;
14
- //# sourceMappingURL=SectionHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SectionHeader.js","sourceRoot":"","sources":["../../../../src/components/SectionList/SectionHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAwB,IAAI,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C,MAAM,aAAa,GAA0D,CAAC,EAC5E,KAAK,EACL,QAAQ,GACT,EAAE,EAAE,CAAC,oBAAC,IAAI,IAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAG,QAAQ,CAAQ,CAAC;AAM9C,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAC3C,CAAC,EAAE,KAAK,EAAE,KAAK,EAA6B,EAAE,EAAE;IAC9C,OAAO,CACL,oBAAC,IAAI,IACH,MAAM,EAAC,wBAAwB,EAC/B,KAAK,EAAE;YACL,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;YAC9B,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;YACrC,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;SACZ,IAEA,KAAK,CACD,CACR,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,20 +0,0 @@
1
- /// <reference types="react" />
2
- import { FlashListProps } from "@shopify/flash-list";
3
- import { FlatListProps } from "react-native";
4
- declare type ListComponentType = "FlatList" | "FlashList";
5
- interface AdditionalSectionListProps<T> {
6
- sectionKey: string;
7
- renderItem: (itemInfo: {
8
- item?: T;
9
- index: number;
10
- section: string;
11
- }) => JSX.Element;
12
- listComponent?: ListComponentType;
13
- }
14
- declare type FlatListSectionListProps<T> = Omit<FlatListProps<T>, "renderItem"> & AdditionalSectionListProps<T>;
15
- declare type FlashListSectionListProps<T> = Omit<FlashListProps<T>, "renderItem"> & AdditionalSectionListProps<T>;
16
- export declare const DEFAULT_SECTION = "Uncategorized";
17
- declare const SectionList: <T extends {
18
- [key: string]: any;
19
- }>({ sectionKey, listComponent, data: dataProp, renderItem: renderItemProp, ...rest }: FlatListSectionListProps<T> | FlashListSectionListProps<T>) => JSX.Element;
20
- export default SectionList;
@@ -1,95 +0,0 @@
1
- import React from "react";
2
- import { FlashList } from "@shopify/flash-list";
3
- import { FlatList } from "react-native";
4
- import SectionHeader, { DefaultSectionHeader } from "./SectionHeader";
5
- export const DEFAULT_SECTION = "Uncategorized";
6
- const SectionList = ({ sectionKey, listComponent = "FlatList", data: dataProp, renderItem: renderItemProp, ...rest }) => {
7
- const data = React.useMemo(() => (dataProp || []), [dataProp]);
8
- const dataWithSections = React.useMemo(() => {
9
- var _a;
10
- const result = [];
11
- const sectionDataItems = {};
12
- for (const item of data) {
13
- const section = ((_a = item[sectionKey]) === null || _a === void 0 ? void 0 : _a.toString()) || DEFAULT_SECTION;
14
- if (sectionDataItems[section]) {
15
- sectionDataItems[section].push(item);
16
- }
17
- else {
18
- sectionDataItems[section] = [item];
19
- }
20
- }
21
- for (const section in sectionDataItems) {
22
- result.push({ type: "SECTION_ITEM", title: section });
23
- const sectionItems = sectionDataItems[section].map((item) => ({ type: "DATA_ITEM", data: item }));
24
- result.push(...sectionItems);
25
- }
26
- return result;
27
- }, [data, sectionKey]);
28
- const extractSectionHeader = (element) => {
29
- if (!element) {
30
- return null;
31
- }
32
- const props = element.props || {};
33
- const children = React.Children.toArray(props.children).map((child) => child);
34
- if (element.type === SectionHeader) {
35
- return element;
36
- }
37
- else {
38
- for (const child of children) {
39
- if (child.type === SectionHeader) {
40
- return child;
41
- }
42
- }
43
- }
44
- return null;
45
- };
46
- const extractRemainingNonSectionHeader = (element) => {
47
- if (!element) {
48
- return null;
49
- }
50
- const props = element.props || {};
51
- const children = React.Children.toArray(props.children).map((child) => child);
52
- if (element.type === SectionHeader) {
53
- return null;
54
- }
55
- else {
56
- const newChildren = [];
57
- for (const child of children) {
58
- if (child.type !== SectionHeader) {
59
- newChildren.push(child);
60
- }
61
- }
62
- return React.cloneElement(element, {
63
- ...props,
64
- children: newChildren,
65
- });
66
- }
67
- };
68
- const renderItem = ({ item, index, }) => {
69
- switch (item.type) {
70
- case "SECTION_ITEM": {
71
- const renderedItem = renderItemProp({
72
- index,
73
- section: item.title,
74
- });
75
- return (extractSectionHeader(renderedItem) || (React.createElement(DefaultSectionHeader, { title: item.title })));
76
- }
77
- case "DATA_ITEM": {
78
- const renderedItem = renderItemProp({
79
- item: item.data,
80
- index,
81
- section: item.data[sectionKey] || DEFAULT_SECTION,
82
- });
83
- return extractRemainingNonSectionHeader(renderedItem);
84
- }
85
- }
86
- };
87
- switch (listComponent) {
88
- case "FlatList":
89
- return (React.createElement(FlatList, { ...rest, data: dataWithSections, renderItem: renderItem }));
90
- case "FlashList":
91
- return (React.createElement(FlashList, { ...rest, data: dataWithSections, renderItem: renderItem }));
92
- }
93
- };
94
- export default SectionList;
95
- //# sourceMappingURL=SectionList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SectionList.js","sourceRoot":"","sources":["../../../../src/components/SectionList/SectionList.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export { default as SectionList } from "./SectionList";
2
- export { default as SectionHeader } from "./SectionHeader";
@@ -1,3 +0,0 @@
1
- export { default as SectionList } from "./SectionList";
2
- export { default as SectionHeader } from "./SectionHeader";
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/SectionList/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1,14 +0,0 @@
1
- import React from "react";
2
- import { View, Text } from "react-native";
3
- import { withTheme } from "../../theming";
4
- const SectionHeader = ({ style, children, }) => React.createElement(View, { style: [style] }, children);
5
- export const DefaultSectionHeader = withTheme(({ title, theme }) => {
6
- return (React.createElement(Text, { testID: "default-section-header", style: {
7
- color: theme.colors.background,
8
- backgroundColor: theme.colors.primary,
9
- fontSize: 16,
10
- padding: 10,
11
- } }, title));
12
- });
13
- export default SectionHeader;
14
- //# sourceMappingURL=SectionHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SectionHeader.js","sourceRoot":"","sources":["SectionHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAwB,IAAI,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C,MAAM,aAAa,GAA0D,CAAC,EAC5E,KAAK,EACL,QAAQ,GACT,EAAE,EAAE,CAAC,oBAAC,IAAI,IAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAG,QAAQ,CAAQ,CAAC;AAM9C,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAC3C,CAAC,EAAE,KAAK,EAAE,KAAK,EAA6B,EAAE,EAAE;IAC9C,OAAO,CACL,oBAAC,IAAI,IACH,MAAM,EAAC,wBAAwB,EAC/B,KAAK,EAAE;YACL,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;YAC9B,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;YACrC,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;SACZ,IAEA,KAAK,CACD,CACR,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,37 +0,0 @@
1
- import React from "react";
2
- import { View, StyleProp, ViewStyle, Text } from "react-native";
3
- import { withTheme } from "../../theming";
4
- import type { Theme } from "../../styles/DefaultTheme";
5
-
6
- interface SectionHeaderProps {
7
- style?: StyleProp<ViewStyle>;
8
- }
9
-
10
- const SectionHeader: React.FC<React.PropsWithChildren<SectionHeaderProps>> = ({
11
- style,
12
- children,
13
- }) => <View style={[style]}>{children}</View>;
14
-
15
- interface DefaultSectionHeaderProps {
16
- title: string;
17
- theme: Theme;
18
- }
19
- export const DefaultSectionHeader = withTheme(
20
- ({ title, theme }: DefaultSectionHeaderProps) => {
21
- return (
22
- <Text
23
- testID="default-section-header"
24
- style={{
25
- color: theme.colors.background,
26
- backgroundColor: theme.colors.primary,
27
- fontSize: 16,
28
- padding: 10,
29
- }}
30
- >
31
- {title}
32
- </Text>
33
- );
34
- }
35
- );
36
-
37
- export default SectionHeader;
@@ -1,95 +0,0 @@
1
- import React from "react";
2
- import { FlashList } from "@shopify/flash-list";
3
- import { FlatList } from "react-native";
4
- import SectionHeader, { DefaultSectionHeader } from "./SectionHeader";
5
- export const DEFAULT_SECTION = "Uncategorized";
6
- const SectionList = ({ sectionKey, listComponent = "FlatList", data: dataProp, renderItem: renderItemProp, ...rest }) => {
7
- const data = React.useMemo(() => (dataProp || []), [dataProp]);
8
- const dataWithSections = React.useMemo(() => {
9
- var _a;
10
- const result = [];
11
- const sectionDataItems = {};
12
- for (const item of data) {
13
- const section = ((_a = item[sectionKey]) === null || _a === void 0 ? void 0 : _a.toString()) || DEFAULT_SECTION;
14
- if (sectionDataItems[section]) {
15
- sectionDataItems[section].push(item);
16
- }
17
- else {
18
- sectionDataItems[section] = [item];
19
- }
20
- }
21
- for (const section in sectionDataItems) {
22
- result.push({ type: "SECTION_ITEM", title: section });
23
- const sectionItems = sectionDataItems[section].map((item) => ({ type: "DATA_ITEM", data: item }));
24
- result.push(...sectionItems);
25
- }
26
- return result;
27
- }, [data, sectionKey]);
28
- const extractSectionHeader = (element) => {
29
- if (!element) {
30
- return null;
31
- }
32
- const props = element.props || {};
33
- const children = React.Children.toArray(props.children).map((child) => child);
34
- if (element.type === SectionHeader) {
35
- return element;
36
- }
37
- else {
38
- for (const child of children) {
39
- if (child.type === SectionHeader) {
40
- return child;
41
- }
42
- }
43
- }
44
- return null;
45
- };
46
- const extractRemainingNonSectionHeader = (element) => {
47
- if (!element) {
48
- return null;
49
- }
50
- const props = element.props || {};
51
- const children = React.Children.toArray(props.children).map((child) => child);
52
- if (element.type === SectionHeader) {
53
- return null;
54
- }
55
- else {
56
- const newChildren = [];
57
- for (const child of children) {
58
- if (child.type !== SectionHeader) {
59
- newChildren.push(child);
60
- }
61
- }
62
- return React.cloneElement(element, {
63
- ...props,
64
- children: newChildren,
65
- });
66
- }
67
- };
68
- const renderItem = ({ item, index, }) => {
69
- switch (item.type) {
70
- case "SECTION_ITEM": {
71
- const renderedItem = renderItemProp({
72
- index,
73
- section: item.title,
74
- });
75
- return (extractSectionHeader(renderedItem) || (React.createElement(DefaultSectionHeader, { title: item.title })));
76
- }
77
- case "DATA_ITEM": {
78
- const renderedItem = renderItemProp({
79
- item: item.data,
80
- index,
81
- section: item.data[sectionKey] || DEFAULT_SECTION,
82
- });
83
- return extractRemainingNonSectionHeader(renderedItem);
84
- }
85
- }
86
- };
87
- switch (listComponent) {
88
- case "FlatList":
89
- return (React.createElement(FlatList, { ...rest, data: dataWithSections, renderItem: renderItem }));
90
- case "FlashList":
91
- return (React.createElement(FlashList, { ...rest, data: dataWithSections, renderItem: renderItem }));
92
- }
93
- };
94
- export default SectionList;
95
- //# sourceMappingURL=SectionList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SectionList.js","sourceRoot":"","sources":["SectionList.tsx"],"names":[],"mappings":"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"}