@draftbit/core 46.10.3-399330.2 → 46.10.3-4470c4.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 (72) hide show
  1. package/lib/commonjs/components/Banner.js +23 -4
  2. package/lib/commonjs/components/Checkbox/CheckboxGroupRow.js +23 -5
  3. package/lib/commonjs/components/Checkbox/CheckboxRow.js +23 -6
  4. package/lib/commonjs/components/Checkbox/context.js +1 -1
  5. package/lib/commonjs/components/CircularProgress.js +26 -8
  6. package/lib/commonjs/components/Divider.js +1 -14
  7. package/lib/commonjs/components/Image.js +2 -17
  8. package/lib/commonjs/components/Layout.js +19 -40
  9. package/lib/commonjs/components/Picker/Picker.js +4 -6
  10. package/lib/commonjs/components/Portal/PortalConsumer.js +7 -22
  11. package/lib/commonjs/components/RadioButton/RadioButtonFieldGroup.js +9 -1
  12. package/lib/commonjs/components/RadioButton/context.js +1 -1
  13. package/lib/commonjs/components/Slider.js +4 -21
  14. package/lib/commonjs/components/StarRating.js +4 -23
  15. package/lib/commonjs/components/Table/Table.js +123 -0
  16. package/lib/commonjs/components/Table/TableCell.js +49 -0
  17. package/lib/commonjs/components/Table/TableCommon.js +30 -0
  18. package/lib/commonjs/components/Table/TableRow.js +61 -0
  19. package/lib/commonjs/components/Table/index.js +27 -0
  20. package/lib/commonjs/constants.js +1 -1
  21. package/lib/commonjs/index.js +19 -7
  22. package/lib/commonjs/mappings/NativeBase/Layout.js +9 -14
  23. package/lib/commonjs/mappings/Table.js +140 -0
  24. package/lib/module/components/DeprecatedFAB.js +3 -23
  25. package/lib/module/components/Table/Table.js +114 -0
  26. package/lib/module/components/Table/TableCell.js +41 -0
  27. package/lib/module/components/Table/TableCommon.js +21 -0
  28. package/lib/module/components/Table/TableRow.js +53 -0
  29. package/lib/module/components/Table/index.js +3 -0
  30. package/lib/module/hooks.js +1 -2
  31. package/lib/module/index.js +1 -1
  32. package/lib/module/mappings/NativeBase/Layout.js +10 -15
  33. package/lib/module/mappings/Table.js +133 -0
  34. package/lib/typescript/src/components/Table/Table.d.ts +19 -0
  35. package/lib/typescript/src/components/Table/Table.d.ts.map +1 -0
  36. package/lib/typescript/src/components/Table/TableCell.d.ts +9 -0
  37. package/lib/typescript/src/components/Table/TableCell.d.ts.map +1 -0
  38. package/lib/typescript/src/components/Table/TableCommon.d.ts +20 -0
  39. package/lib/typescript/src/components/Table/TableCommon.d.ts.map +1 -0
  40. package/lib/typescript/src/components/Table/TableRow.d.ts +14 -0
  41. package/lib/typescript/src/components/Table/TableRow.d.ts.map +1 -0
  42. package/lib/typescript/src/components/Table/index.d.ts +4 -0
  43. package/lib/typescript/src/components/Table/index.d.ts.map +1 -0
  44. package/lib/typescript/src/index.d.ts +1 -1
  45. package/lib/typescript/src/index.d.ts.map +1 -1
  46. package/lib/typescript/src/mappings/NativeBase/Layout.d.ts +16 -27
  47. package/lib/typescript/src/mappings/NativeBase/Layout.d.ts.map +1 -1
  48. package/lib/typescript/src/mappings/Table.d.ts +337 -0
  49. package/lib/typescript/src/mappings/Table.d.ts.map +1 -0
  50. package/package.json +3 -3
  51. package/src/components/Table/Table.js +93 -0
  52. package/src/components/Table/Table.tsx +176 -0
  53. package/src/components/Table/TableCell.js +31 -0
  54. package/src/components/Table/TableCell.tsx +63 -0
  55. package/src/components/Table/TableCommon.js +12 -0
  56. package/src/components/Table/TableCommon.ts +40 -0
  57. package/src/components/Table/TableRow.js +37 -0
  58. package/src/components/Table/TableRow.tsx +77 -0
  59. package/src/components/Table/index.js +3 -0
  60. package/src/components/Table/index.tsx +3 -0
  61. package/src/index.js +1 -1
  62. package/src/index.tsx +2 -1
  63. package/src/mappings/NativeBase/Layout.js +19 -13
  64. package/src/mappings/NativeBase/Layout.ts +19 -13
  65. package/src/mappings/Table.js +150 -0
  66. package/src/mappings/Table.ts +170 -0
  67. package/lib/commonjs/components/Container.js +0 -93
  68. package/lib/module/components/Container.js +0 -83
  69. package/lib/typescript/src/components/Container.d.ts +0 -21
  70. package/lib/typescript/src/components/Container.d.ts.map +0 -1
  71. package/src/components/Container.js +0 -43
  72. package/src/components/Container.tsx +0 -116
@@ -12,14 +12,13 @@ export declare const SEED_DATA: ({
12
12
  step: number;
13
13
  };
14
14
  centerContent?: undefined;
15
- direction?: undefined;
16
- reversed?: undefined;
17
15
  isDisabled?: undefined;
18
16
  isInvalid?: undefined;
17
+ reversed?: undefined;
19
18
  };
19
+ stylesPanelSections: string[];
20
20
  category: string;
21
21
  packageName: string;
22
- stylesPanelSections: string[];
23
22
  name: string;
24
23
  tag: string;
25
24
  description: string;
@@ -49,10 +48,9 @@ export declare const SEED_DATA: ({
49
48
  group: string;
50
49
  };
51
50
  ratio?: undefined;
52
- direction?: undefined;
53
- reversed?: undefined;
54
51
  isDisabled?: undefined;
55
52
  isInvalid?: undefined;
53
+ reversed?: undefined;
56
54
  };
57
55
  } | {
58
56
  category: string;
@@ -63,30 +61,21 @@ export declare const SEED_DATA: ({
63
61
  description: string;
64
62
  layout: {
65
63
  flexDirection: string;
64
+ flex?: undefined;
65
+ };
66
+ } | {
67
+ stylesPanelSections: string[];
68
+ category: string;
69
+ packageName: string;
70
+ name: string;
71
+ tag: string;
72
+ description: string;
73
+ layout: {
74
+ flex: number;
75
+ flexDirection?: undefined;
66
76
  };
67
77
  } | {
68
78
  props: {
69
- direction: {
70
- group: string;
71
- label: string;
72
- description: string;
73
- editable: boolean;
74
- required: boolean;
75
- formType: string;
76
- propType: string;
77
- defaultValue: null;
78
- options: never[];
79
- };
80
- reversed: {
81
- label: string;
82
- description: string;
83
- formType: string;
84
- propType: string;
85
- defaultValue: boolean;
86
- editable: boolean;
87
- required: boolean;
88
- group: string;
89
- };
90
79
  isDisabled: {
91
80
  label: string;
92
81
  description: string;
@@ -109,6 +98,7 @@ export declare const SEED_DATA: ({
109
98
  };
110
99
  ratio?: undefined;
111
100
  centerContent?: undefined;
101
+ reversed?: undefined;
112
102
  };
113
103
  category: string;
114
104
  packageName: string;
@@ -130,7 +120,6 @@ export declare const SEED_DATA: ({
130
120
  };
131
121
  ratio?: undefined;
132
122
  centerContent?: undefined;
133
- direction?: undefined;
134
123
  isDisabled?: undefined;
135
124
  isInvalid?: undefined;
136
125
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.d.ts","sourceRoot":"","sources":["../../../../../src/mappings/NativeBase/Layout.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoHrB,CAAC"}
1
+ {"version":3,"file":"Layout.d.ts","sourceRoot":"","sources":["../../../../../src/mappings/NativeBase/Layout.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0HrB,CAAC"}
@@ -0,0 +1,337 @@
1
+ export declare const SEED_DATA: ({
2
+ name: string;
3
+ tag: string;
4
+ description: string;
5
+ category: string;
6
+ stylesPanelSections: string[];
7
+ layout: {
8
+ flex: number;
9
+ flexDirection?: undefined;
10
+ };
11
+ props: {
12
+ borderWidth: {
13
+ defaultValue: number;
14
+ label: string;
15
+ description: string;
16
+ formType: string;
17
+ propType: string;
18
+ group: string;
19
+ editable: boolean;
20
+ required: boolean;
21
+ step: number;
22
+ };
23
+ borderColor: {
24
+ defaultValue: string;
25
+ group: string;
26
+ label: string;
27
+ description: string;
28
+ editable: boolean;
29
+ required: boolean;
30
+ formType: string;
31
+ propType: string;
32
+ };
33
+ borderStyle: {
34
+ defaultValue: string;
35
+ group: string;
36
+ label: string;
37
+ description: string;
38
+ editable: boolean;
39
+ required: boolean;
40
+ formType: string;
41
+ propType: string;
42
+ options: never[];
43
+ };
44
+ drawTopBorder: {
45
+ defaultValue: boolean;
46
+ label: string;
47
+ description: string;
48
+ formType: string;
49
+ propType: string;
50
+ editable: boolean;
51
+ required: boolean;
52
+ group: string;
53
+ };
54
+ cellVerticalPadding: {
55
+ defaultValue: number;
56
+ label: string;
57
+ description: string;
58
+ formType: string;
59
+ propType: string;
60
+ group: string;
61
+ editable: boolean;
62
+ required: boolean;
63
+ step: number;
64
+ };
65
+ cellHorizontalPadding: {
66
+ defaultValue: number;
67
+ label: string;
68
+ description: string;
69
+ formType: string;
70
+ propType: string;
71
+ group: string;
72
+ editable: boolean;
73
+ required: boolean;
74
+ step: number;
75
+ };
76
+ showsVerticalScrollIndicator: {
77
+ label: string;
78
+ description: string;
79
+ formType: string;
80
+ propType: string;
81
+ defaultValue: boolean;
82
+ editable: boolean;
83
+ required: boolean;
84
+ group: string;
85
+ };
86
+ drawBottomBorder: {
87
+ label: string;
88
+ description: string;
89
+ formType: string;
90
+ propType: string;
91
+ defaultValue: boolean;
92
+ editable: boolean;
93
+ required: boolean;
94
+ group: string;
95
+ };
96
+ drawStartBorder: {
97
+ label: string;
98
+ description: string;
99
+ formType: string;
100
+ propType: string;
101
+ defaultValue: boolean;
102
+ editable: boolean;
103
+ required: boolean;
104
+ group: string;
105
+ };
106
+ drawEndBorder: {
107
+ label: string;
108
+ description: string;
109
+ formType: string;
110
+ propType: string;
111
+ defaultValue: boolean;
112
+ editable: boolean;
113
+ required: boolean;
114
+ group: string;
115
+ };
116
+ };
117
+ } | {
118
+ name: string;
119
+ tag: string;
120
+ description: string;
121
+ category: string;
122
+ stylesPanelSections: string[];
123
+ props: {
124
+ drawStartBorder: {
125
+ defaultValue: boolean;
126
+ label: string;
127
+ description: string;
128
+ formType: string;
129
+ propType: string;
130
+ editable: boolean;
131
+ required: boolean;
132
+ group: string;
133
+ };
134
+ drawBottomBorder: {
135
+ defaultValue: boolean;
136
+ label: string;
137
+ description: string;
138
+ formType: string;
139
+ propType: string;
140
+ editable: boolean;
141
+ required: boolean;
142
+ group: string;
143
+ };
144
+ isTableHeader: {
145
+ label: string;
146
+ description: string;
147
+ formType: string;
148
+ propType: string;
149
+ defaultValue: boolean;
150
+ editable: boolean;
151
+ required: boolean;
152
+ group: string;
153
+ };
154
+ borderWidth: {
155
+ label: string;
156
+ description: string;
157
+ formType: string;
158
+ propType: string;
159
+ group: string;
160
+ defaultValue: null;
161
+ editable: boolean;
162
+ required: boolean;
163
+ step: number;
164
+ };
165
+ borderColor: {
166
+ group: string;
167
+ label: string;
168
+ description: string;
169
+ editable: boolean;
170
+ required: boolean;
171
+ defaultValue: null;
172
+ formType: string;
173
+ propType: string;
174
+ };
175
+ borderStyle: {
176
+ group: string;
177
+ label: string;
178
+ description: string;
179
+ editable: boolean;
180
+ required: boolean;
181
+ formType: string;
182
+ propType: string;
183
+ defaultValue: null;
184
+ options: never[];
185
+ };
186
+ drawTopBorder: {
187
+ label: string;
188
+ description: string;
189
+ formType: string;
190
+ propType: string;
191
+ defaultValue: boolean;
192
+ editable: boolean;
193
+ required: boolean;
194
+ group: string;
195
+ };
196
+ drawEndBorder: {
197
+ label: string;
198
+ description: string;
199
+ formType: string;
200
+ propType: string;
201
+ defaultValue: boolean;
202
+ editable: boolean;
203
+ required: boolean;
204
+ group: string;
205
+ };
206
+ cellVerticalPadding: {
207
+ label: string;
208
+ description: string;
209
+ formType: string;
210
+ propType: string;
211
+ group: string;
212
+ defaultValue: null;
213
+ editable: boolean;
214
+ required: boolean;
215
+ step: number;
216
+ };
217
+ cellHorizontalPadding: {
218
+ label: string;
219
+ description: string;
220
+ formType: string;
221
+ propType: string;
222
+ group: string;
223
+ defaultValue: null;
224
+ editable: boolean;
225
+ required: boolean;
226
+ step: number;
227
+ };
228
+ };
229
+ layout?: undefined;
230
+ } | {
231
+ name: string;
232
+ tag: string;
233
+ description: string;
234
+ category: string;
235
+ stylesPanelSections: string[];
236
+ layout: {
237
+ flex: number;
238
+ flexDirection: string;
239
+ };
240
+ props: {
241
+ drawEndBorder: {
242
+ defaultValue: boolean;
243
+ label: string;
244
+ description: string;
245
+ formType: string;
246
+ propType: string;
247
+ editable: boolean;
248
+ required: boolean;
249
+ group: string;
250
+ };
251
+ borderWidth: {
252
+ label: string;
253
+ description: string;
254
+ formType: string;
255
+ propType: string;
256
+ group: string;
257
+ defaultValue: null;
258
+ editable: boolean;
259
+ required: boolean;
260
+ step: number;
261
+ };
262
+ borderColor: {
263
+ group: string;
264
+ label: string;
265
+ description: string;
266
+ editable: boolean;
267
+ required: boolean;
268
+ defaultValue: null;
269
+ formType: string;
270
+ propType: string;
271
+ };
272
+ borderStyle: {
273
+ group: string;
274
+ label: string;
275
+ description: string;
276
+ editable: boolean;
277
+ required: boolean;
278
+ formType: string;
279
+ propType: string;
280
+ defaultValue: null;
281
+ options: never[];
282
+ };
283
+ drawTopBorder: {
284
+ label: string;
285
+ description: string;
286
+ formType: string;
287
+ propType: string;
288
+ defaultValue: boolean;
289
+ editable: boolean;
290
+ required: boolean;
291
+ group: string;
292
+ };
293
+ drawBottomBorder: {
294
+ label: string;
295
+ description: string;
296
+ formType: string;
297
+ propType: string;
298
+ defaultValue: boolean;
299
+ editable: boolean;
300
+ required: boolean;
301
+ group: string;
302
+ };
303
+ drawStartBorder: {
304
+ label: string;
305
+ description: string;
306
+ formType: string;
307
+ propType: string;
308
+ defaultValue: boolean;
309
+ editable: boolean;
310
+ required: boolean;
311
+ group: string;
312
+ };
313
+ cellVerticalPadding: {
314
+ label: string;
315
+ description: string;
316
+ formType: string;
317
+ propType: string;
318
+ group: string;
319
+ defaultValue: null;
320
+ editable: boolean;
321
+ required: boolean;
322
+ step: number;
323
+ };
324
+ cellHorizontalPadding: {
325
+ label: string;
326
+ description: string;
327
+ formType: string;
328
+ propType: string;
329
+ group: string;
330
+ defaultValue: null;
331
+ editable: boolean;
332
+ required: boolean;
333
+ step: number;
334
+ };
335
+ };
336
+ })[];
337
+ //# sourceMappingURL=Table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../src/mappings/Table.ts"],"names":[],"mappings":"AAsEA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmGrB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@draftbit/core",
3
- "version": "46.10.3-399330.2+3993301",
3
+ "version": "46.10.3-4470c4.2+4470c46",
4
4
  "description": "Core (non-native) Components",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -41,7 +41,7 @@
41
41
  "dependencies": {
42
42
  "@date-io/date-fns": "^1.3.13",
43
43
  "@draftbit/react-theme-provider": "^2.1.1",
44
- "@draftbit/types": "^46.10.3-399330.2+3993301",
44
+ "@draftbit/types": "^46.10.3-4470c4.2+4470c46",
45
45
  "@material-ui/core": "^4.11.0",
46
46
  "@material-ui/pickers": "^3.2.10",
47
47
  "@react-native-community/slider": "4.2.3",
@@ -100,5 +100,5 @@
100
100
  ]
101
101
  ]
102
102
  },
103
- "gitHead": "39933013e1d3b848fb7d16d8cfc94a7adc51b19a"
103
+ "gitHead": "4470c46a5de7b7f950440194ca379a403e27a29f"
104
104
  }
@@ -0,0 +1,93 @@
1
+ import React from "react";
2
+ import { ScrollView, View, StyleSheet, } from "react-native";
3
+ import { withTheme } from "../../theming";
4
+ import { generateBorderStyles, TableStyleContext, } from "./TableCommon";
5
+ const Table = ({ theme, borderWidth = 1, borderColor = theme.colors.divider, borderStyle = "solid", drawTopBorder = true, drawBottomBorder = false, drawStartBorder = false, drawEndBorder = false, cellVerticalPadding = 10, cellHorizontalPadding = 10, data, keyExtractor, renderItem, children: childrenProp, style, ...rest }) => {
6
+ //Both 'renderItem' and 'data' are optional to allow direct children. But if one is included, both need to be included
7
+ if ((data && !renderItem) || (renderItem && !data)) {
8
+ throw new Error("'renderItem' and 'data' need to both be provided to render from 'data'. Either remove them entirley or include both");
9
+ }
10
+ if (data && renderItem && childrenProp) {
11
+ console.warn("'children' of Table ignored due to usage of 'data' and 'renderItem'");
12
+ }
13
+ const isTableHeader = React.useCallback((object) => {
14
+ return object.isTableHeader;
15
+ }, []);
16
+ const isRenderItem = data && renderItem;
17
+ //Uses 'renderItem' and 'data' to create an array of children
18
+ const dataAsChildren = React.useMemo(() => {
19
+ if (!isRenderItem)
20
+ return [];
21
+ return data.map((item, index) => {
22
+ const component = renderItem({ item, index });
23
+ if (!component) {
24
+ return null;
25
+ }
26
+ const key = keyExtractor ? keyExtractor(item, index) : index.toString();
27
+ return React.cloneElement(component, {
28
+ key,
29
+ });
30
+ });
31
+ }, [data, renderItem, keyExtractor, isRenderItem]);
32
+ const children = isRenderItem
33
+ ? dataAsChildren
34
+ : React.Children.toArray(childrenProp);
35
+ const validChildren = React.useMemo(() => children.filter((item) => React.isValidElement(item)), [children]);
36
+ const childrenWithoutHeader = React.useMemo(() => {
37
+ const flattenedWithoutNestedHeaders = validChildren.map((item) => {
38
+ const nestedChildren = React.Children.toArray(item.props.children);
39
+ //Header can be nested in React.Fragment when in renderItem
40
+ const nestedHeaders = nestedChildren.filter((child) => isTableHeader(child.props));
41
+ if (nestedHeaders === null || nestedHeaders === void 0 ? void 0 : nestedHeaders.length) {
42
+ //New element excluding header children
43
+ return React.cloneElement(item, {
44
+ children: nestedChildren.filter((child) => !isTableHeader(child.props)),
45
+ });
46
+ }
47
+ return item;
48
+ });
49
+ return flattenedWithoutNestedHeaders.filter((item) => !isTableHeader(item.props));
50
+ }, [validChildren, isTableHeader]);
51
+ const header = React.useMemo(() => {
52
+ const flattenedPossibleHeaders = validChildren.map((item) => {
53
+ const nestedChildren = React.Children.toArray(item.props.children);
54
+ //Header can be nested in React.Fragment when in renderItem
55
+ const nestedHeaders = nestedChildren.filter((child) => isTableHeader(child.props));
56
+ if (nestedHeaders === null || nestedHeaders === void 0 ? void 0 : nestedHeaders.length) {
57
+ return nestedHeaders[0];
58
+ }
59
+ return item;
60
+ });
61
+ const allHeaders = flattenedPossibleHeaders.filter((item) => isTableHeader(item.props));
62
+ if (allHeaders.length) {
63
+ return allHeaders[0]; //Only 1 header rendered
64
+ }
65
+ return null;
66
+ }, [validChildren, isTableHeader]);
67
+ const contextValue = {
68
+ borderColor,
69
+ borderStyle,
70
+ borderWidth,
71
+ cellHorizontalPadding,
72
+ cellVerticalPadding,
73
+ };
74
+ const borderViewStyle = generateBorderStyles({
75
+ borderColor,
76
+ borderWidth,
77
+ borderStyle,
78
+ drawTopBorder,
79
+ drawBottomBorder,
80
+ drawStartBorder,
81
+ drawEndBorder,
82
+ });
83
+ return (React.createElement(TableStyleContext.Provider, { value: contextValue },
84
+ React.createElement(View, { style: [styles.container, borderViewStyle, style] },
85
+ React.createElement(React.Fragment, null, header),
86
+ React.createElement(ScrollView, { ...rest }, childrenWithoutHeader))));
87
+ };
88
+ const styles = StyleSheet.create({
89
+ container: {
90
+ flex: 1,
91
+ },
92
+ });
93
+ export default withTheme(Table);