@draftbit/core 46.4.4-535477.2 → 46.4.4-618dac.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 (57) hide show
  1. package/lib/commonjs/components/BottomSheet/BottomSheet.native.js +68 -0
  2. package/lib/commonjs/components/BottomSheet/BottomSheet.web.js +97 -0
  3. package/lib/commonjs/components/BottomSheet/index.js +15 -0
  4. package/lib/commonjs/components/BottomSheet/types.js +5 -0
  5. package/lib/commonjs/components/CircleImage.js +16 -2
  6. package/lib/commonjs/components/Text.js +6 -2
  7. package/lib/commonjs/components/TextField.js +5 -1
  8. package/lib/commonjs/index.js +8 -0
  9. package/lib/commonjs/mappings/AudioPlayer.js +2 -32
  10. package/lib/commonjs/mappings/BottomSheet.js +22 -0
  11. package/lib/commonjs/mappings/TextField.js +1 -1
  12. package/lib/commonjs/mappings/TextInput.js +1 -1
  13. package/lib/module/components/BottomSheet/BottomSheet.native.js +50 -0
  14. package/lib/module/components/BottomSheet/BottomSheet.web.js +78 -0
  15. package/lib/module/components/BottomSheet/index.js +2 -0
  16. package/lib/module/components/BottomSheet/types.js +1 -0
  17. package/lib/module/components/Text.js +6 -2
  18. package/lib/module/components/TextField.js +5 -1
  19. package/lib/module/index.js +1 -0
  20. package/lib/module/mappings/AudioPlayer.js +3 -33
  21. package/lib/module/mappings/BottomSheet.js +13 -0
  22. package/lib/module/mappings/TextField.js +1 -1
  23. package/lib/module/mappings/TextInput.js +1 -1
  24. package/lib/typescript/src/components/BottomSheet/BottomSheet.native.d.ts +4 -0
  25. package/lib/typescript/src/components/BottomSheet/BottomSheet.web.d.ts +4 -0
  26. package/lib/typescript/src/components/BottomSheet/index.d.ts +1 -0
  27. package/lib/typescript/src/components/BottomSheet/types.d.ts +8 -0
  28. package/lib/typescript/src/components/Text.d.ts +2 -1
  29. package/lib/typescript/src/components/TextField.d.ts +2 -1
  30. package/lib/typescript/src/index.d.ts +1 -0
  31. package/lib/typescript/src/mappings/AudioPlayer.d.ts +1 -62
  32. package/lib/typescript/src/mappings/BottomSheet.d.ts +19 -0
  33. package/lib/typescript/src/mappings/TextField.d.ts +2 -2
  34. package/lib/typescript/src/mappings/TextInput.d.ts +1 -1
  35. package/package.json +5 -3
  36. package/src/components/BottomSheet/BottomSheet.native.js +37 -0
  37. package/src/components/BottomSheet/BottomSheet.native.tsx +60 -0
  38. package/src/components/BottomSheet/BottomSheet.web.js +56 -0
  39. package/src/components/BottomSheet/BottomSheet.web.tsx +90 -0
  40. package/src/components/BottomSheet/index.js +2 -0
  41. package/src/components/BottomSheet/index.tsx +2 -0
  42. package/src/components/BottomSheet/types.js +1 -0
  43. package/src/components/BottomSheet/types.tsx +8 -0
  44. package/src/components/Text.js +8 -2
  45. package/src/components/Text.tsx +6 -1
  46. package/src/components/TextField.js +6 -1
  47. package/src/components/TextField.tsx +7 -1
  48. package/src/index.js +1 -0
  49. package/src/index.tsx +1 -0
  50. package/src/mappings/AudioPlayer.js +2 -39
  51. package/src/mappings/AudioPlayer.ts +1 -41
  52. package/src/mappings/BottomSheet.js +20 -0
  53. package/src/mappings/BottomSheet.ts +25 -0
  54. package/src/mappings/TextField.js +1 -1
  55. package/src/mappings/TextField.ts +1 -1
  56. package/src/mappings/TextInput.js +1 -1
  57. package/src/mappings/TextInput.ts +1 -1
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { BottomSheetProps } from "./types";
3
+ declare const BottomSheetComponent: React.FC<BottomSheetProps>;
4
+ export default BottomSheetComponent;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { BottomSheetProps } from "./types";
3
+ declare const BottomSheetComponent: React.FC<BottomSheetProps>;
4
+ export default BottomSheetComponent;
@@ -0,0 +1 @@
1
+ export { default as BottomSheet } from "./BottomSheet";
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { StyleProp, ViewStyle, TextStyle } from "react-native";
3
+ export interface BottomSheetProps {
4
+ style: StyleProp<ViewStyle | TextStyle>;
5
+ children: React.ReactNode;
6
+ step: number;
7
+ isOpen?: Boolean;
8
+ }
@@ -6,7 +6,8 @@ declare type Props = {
6
6
  } & TextProps;
7
7
  declare class Text extends React.Component<Props> {
8
8
  _root: any;
9
- setNativeProps(args: TextProps): any;
9
+ state: any;
10
+ setNativeProps(args: TextProps): void;
10
11
  render(): JSX.Element;
11
12
  }
12
13
  export declare const BaseLink: ({ style, theme, title, ...props }: any) => JSX.Element;
@@ -27,6 +27,7 @@ export declare type Props = {
27
27
  }) => React.ReactNode;
28
28
  } & TextInputProps & IconSlot;
29
29
  interface State {
30
+ nativeProps: any;
30
31
  labeled: Animated.Value;
31
32
  focused?: boolean;
32
33
  placeholder?: string | undefined;
@@ -57,7 +58,7 @@ declare class TextField extends React.Component<Props, State> {
57
58
  /**
58
59
  * @internal
59
60
  */
60
- setNativeProps(args: Props): void | undefined;
61
+ setNativeProps(args: Props): void;
61
62
  isFocused(): boolean | undefined;
62
63
  clear(): void | undefined;
63
64
  focus(): void | undefined;
@@ -29,6 +29,7 @@ export { default as Touchable } from "./components/Touchable";
29
29
  export { AccordionGroup, AccordionItem } from "./components/Accordion";
30
30
  export { ActionSheet, ActionSheetItem, ActionSheetCancel, } from "./components/ActionSheet";
31
31
  export { Swiper, SwiperItem } from "./components/Swiper";
32
+ export { BottomSheet } from "./components/BottomSheet";
32
33
  export { Center, Circle, Square, Row, Stack, Spacer, } from "./components/Layout";
33
34
  export { RadioButton, RadioButtonGroup, RadioButtonRow, RadioButtonFieldGroup, } from "./components/RadioButton/index";
34
35
  export { default as CardBlock } from "./components/CardBlock";
@@ -3,17 +3,7 @@ export declare const SEED_DATA: {
3
3
  tag: string;
4
4
  description: string;
5
5
  category: string;
6
- stylesPanelSections: string[];
7
- layout: {
8
- backgroundColor: string;
9
- paddingLeft: number;
10
- paddingRight: number;
11
- paddingTop: number;
12
- paddingBottom: number;
13
- borderRadius: number;
14
- flexDirection: string;
15
- alignItems: string;
16
- };
6
+ layout: {};
17
7
  props: {
18
8
  source: {
19
9
  group: string;
@@ -25,56 +15,5 @@ export declare const SEED_DATA: {
25
15
  formType: string;
26
16
  propType: string;
27
17
  };
28
- sliderColor: {
29
- group: string;
30
- label: string;
31
- description: string;
32
- editable: boolean;
33
- required: boolean;
34
- defaultValue: null;
35
- formType: string;
36
- propType: string;
37
- };
38
- completedTrackColor: {
39
- group: string;
40
- label: string;
41
- description: string;
42
- editable: boolean;
43
- required: boolean;
44
- defaultValue: null;
45
- formType: string;
46
- propType: string;
47
- };
48
- remainingTrackColor: {
49
- group: string;
50
- label: string;
51
- description: string;
52
- editable: boolean;
53
- required: boolean;
54
- defaultValue: null;
55
- formType: string;
56
- propType: string;
57
- };
58
- trackThumbSize: {
59
- label: string;
60
- description: string;
61
- formType: string;
62
- propType: string;
63
- group: string;
64
- defaultValue: null;
65
- editable: boolean;
66
- required: boolean;
67
- step: number;
68
- };
69
- playIconColor: {
70
- group: string;
71
- label: string;
72
- description: string;
73
- editable: boolean;
74
- required: boolean;
75
- defaultValue: null;
76
- formType: string;
77
- propType: string;
78
- };
79
18
  };
80
19
  };
@@ -0,0 +1,19 @@
1
+ export declare const SEED_DATA: {
2
+ name: string;
3
+ tag: string;
4
+ category: string;
5
+ stylesPanelSections: string[];
6
+ props: {
7
+ step: {
8
+ label: string;
9
+ description: string;
10
+ formType: string;
11
+ propType: string;
12
+ group: string;
13
+ defaultValue: null;
14
+ editable: boolean;
15
+ required: boolean;
16
+ step: number;
17
+ };
18
+ };
19
+ };
@@ -64,7 +64,7 @@ export declare const SEED_DATA: ({
64
64
  description: string;
65
65
  editable: boolean;
66
66
  required: boolean;
67
- defaultValue: null;
67
+ defaultValue: string;
68
68
  options: string[];
69
69
  formType: string;
70
70
  propType: string;
@@ -371,7 +371,7 @@ export declare const SEED_DATA: ({
371
371
  description: string;
372
372
  editable: boolean;
373
373
  required: boolean;
374
- defaultValue: null;
374
+ defaultValue: string;
375
375
  options: string[];
376
376
  formType: string;
377
377
  propType: string;
@@ -229,7 +229,7 @@ export declare const SEED_DATA: {
229
229
  description: string;
230
230
  editable: boolean;
231
231
  required: boolean;
232
- defaultValue: null;
232
+ defaultValue: string;
233
233
  options: string[];
234
234
  formType: string;
235
235
  propType: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@draftbit/core",
3
- "version": "46.4.4-535477.2+5354772",
3
+ "version": "46.4.4-618dac.2+618dac9",
4
4
  "description": "Core (non-native) Components",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -41,7 +41,8 @@
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.4.4-535477.2+5354772",
44
+ "@draftbit/types": "^46.4.4-618dac.2+618dac9",
45
+ "@gorhom/bottom-sheet": "4.4.5",
45
46
  "@material-ui/core": "^4.11.0",
46
47
  "@material-ui/pickers": "^3.2.10",
47
48
  "@react-native-community/slider": "4.2.3",
@@ -54,6 +55,7 @@
54
55
  "lodash.omit": "^4.5.0",
55
56
  "lodash.tonumber": "^4.0.3",
56
57
  "react-native-modal-datetime-picker": "^13.0.0",
58
+ "react-native-scroll-bottom-sheet": "0.7.0",
57
59
  "react-native-svg": "12.3.0",
58
60
  "react-native-typography": "^1.4.1",
59
61
  "react-native-web-swiper": "^2.2.3"
@@ -81,5 +83,5 @@
81
83
  ]
82
84
  ]
83
85
  },
84
- "gitHead": "5354772b33cfab42f028943a8a73638bec646c09"
86
+ "gitHead": "618dac9ee8e7861d982d4e91880448d415fc6d76"
85
87
  }
@@ -0,0 +1,37 @@
1
+ import React, { useCallback, useMemo, useRef } from "react";
2
+ import { View, StyleSheet } from "react-native";
3
+ import BottomSheet, { BottomSheetView } from "@gorhom/bottom-sheet";
4
+ import { extractStyles } from "../../utilities";
5
+ const BottomSheetComponent = ({ style, children, step, }) => {
6
+ const bottomSheetRef = useRef(null);
7
+ const { viewStyles } = extractStyles(style);
8
+ // variables
9
+ const snapPoints = useMemo(() => ["25%", "50%", "90%"], []);
10
+ // callbacks
11
+ const handleSheetChanges = useCallback((index) => {
12
+ console.log("handleSheetChanges", index);
13
+ }, []);
14
+ React.useEffect(() => {
15
+ var _a;
16
+ if (step === -1) {
17
+ (_a = bottomSheetRef === null || bottomSheetRef === void 0 ? void 0 : bottomSheetRef.current) === null || _a === void 0 ? void 0 : _a.close();
18
+ }
19
+ }, [step]);
20
+ return (React.createElement(View, { style: [
21
+ containerStyle.container,
22
+ viewStyles,
23
+ { backgroundColor: step !== -1 ? "grey" : "transparent" },
24
+ ] },
25
+ React.createElement(BottomSheet, { ref: bottomSheetRef, index: step, snapPoints: snapPoints, onChange: handleSheetChanges },
26
+ React.createElement(BottomSheetView, null, children))));
27
+ };
28
+ export default BottomSheetComponent;
29
+ const containerStyle = StyleSheet.create({
30
+ container: {
31
+ flex: 1,
32
+ },
33
+ contentContainer: {
34
+ flex: 1,
35
+ alignItems: "center",
36
+ },
37
+ });
@@ -0,0 +1,60 @@
1
+ import React, { useCallback, useMemo, useRef } from "react";
2
+ import { View, StyleSheet } from "react-native";
3
+ import BottomSheet, { BottomSheetView } from "@gorhom/bottom-sheet";
4
+
5
+ import { extractStyles } from "../../utilities";
6
+ import { BottomSheetProps } from "./types";
7
+
8
+ const BottomSheetComponent: React.FC<BottomSheetProps> = ({
9
+ style,
10
+ children,
11
+ step,
12
+ }) => {
13
+ const bottomSheetRef = useRef<BottomSheet>(null);
14
+ const { viewStyles } = extractStyles(style);
15
+
16
+ // variables
17
+ const snapPoints = useMemo(() => ["25%", "50%", "90%"], []);
18
+
19
+ // callbacks
20
+ const handleSheetChanges = useCallback((index: number) => {
21
+ console.log("handleSheetChanges", index);
22
+ }, []);
23
+
24
+ React.useEffect(() => {
25
+ if (step === -1) {
26
+ bottomSheetRef?.current?.close();
27
+ }
28
+ }, [step]);
29
+
30
+ return (
31
+ <View
32
+ style={[
33
+ containerStyle.container,
34
+ viewStyles,
35
+ { backgroundColor: step !== -1 ? "grey" : "transparent" },
36
+ ]}
37
+ >
38
+ <BottomSheet
39
+ ref={bottomSheetRef}
40
+ index={step}
41
+ snapPoints={snapPoints}
42
+ onChange={handleSheetChanges}
43
+ >
44
+ <BottomSheetView>{children}</BottomSheetView>
45
+ </BottomSheet>
46
+ </View>
47
+ );
48
+ };
49
+
50
+ export default BottomSheetComponent;
51
+
52
+ const containerStyle = StyleSheet.create({
53
+ container: {
54
+ flex: 1,
55
+ },
56
+ contentContainer: {
57
+ flex: 1,
58
+ alignItems: "center",
59
+ },
60
+ });
@@ -0,0 +1,56 @@
1
+ import React from "react";
2
+ import { StyleSheet, View, Dimensions } from "react-native";
3
+ import ScrollBottomSheet from "react-native-scroll-bottom-sheet";
4
+ import { extractStyles } from "../../utilities";
5
+ const windowHeight = Dimensions.get("window").height;
6
+ const BottomSheetComponent = ({ style, children, step, }) => {
7
+ const { viewStyles } = extractStyles(style);
8
+ const bottomSheetRef = React.useRef();
9
+ const webStep = React.useMemo(() => step + 1, [step]);
10
+ const snapPoints = React.useMemo(() => ["25%", "50%", windowHeight - 200], []);
11
+ React.useEffect(() => {
12
+ var _a;
13
+ (_a = bottomSheetRef === null || bottomSheetRef === void 0 ? void 0 : bottomSheetRef.current) === null || _a === void 0 ? void 0 : _a.snapTo(snapPoints.length - webStep);
14
+ // bottomSheetRef.current.snapTo(step);
15
+ }, [webStep, step, snapPoints]);
16
+ if (step === -1) {
17
+ return React.createElement(React.Fragment, null);
18
+ }
19
+ return (React.createElement(View, { style: styles.container },
20
+ React.createElement(ScrollBottomSheet, { ref: bottomSheetRef, componentType: "ScrollView", snapPoints: snapPoints, initialSnapIndex: 0, renderHandle: () => (React.createElement(View, { style: styles.header },
21
+ React.createElement(View, { style: styles.panelHandle }))), contentContainerStyle: styles.contentContainerStyle },
22
+ React.createElement(View, { style: {
23
+ ...styles.container,
24
+ ...viewStyles,
25
+ backgroundColor: webStep !== -1 ? "grey" : "transparent",
26
+ } }, children))));
27
+ };
28
+ export default BottomSheetComponent;
29
+ const styles = StyleSheet.create({
30
+ container: {
31
+ flex: 1,
32
+ },
33
+ contentContainerStyle: {
34
+ padding: 16,
35
+ },
36
+ header: {
37
+ alignItems: "center",
38
+ backgroundColor: "white",
39
+ paddingVertical: 20,
40
+ borderTopLeftRadius: 20,
41
+ borderTopRightRadius: 20,
42
+ },
43
+ panelHandle: {
44
+ width: 40,
45
+ height: 2,
46
+ backgroundColor: "rgba(0,0,0,0.3)",
47
+ borderRadius: 4,
48
+ },
49
+ item: {
50
+ padding: 20,
51
+ justifyContent: "center",
52
+ backgroundColor: "white",
53
+ alignItems: "center",
54
+ marginVertical: 10,
55
+ },
56
+ });
@@ -0,0 +1,90 @@
1
+ import React from "react";
2
+ import { StyleSheet, View, Dimensions } from "react-native";
3
+ import ScrollBottomSheet from "react-native-scroll-bottom-sheet";
4
+
5
+ import { extractStyles } from "../../utilities";
6
+ import { BottomSheetProps } from "./types";
7
+
8
+ const windowHeight = Dimensions.get("window").height;
9
+
10
+ const BottomSheetComponent: React.FC<BottomSheetProps> = ({
11
+ style,
12
+ children,
13
+ step,
14
+ }) => {
15
+ const { viewStyles } = extractStyles(style);
16
+ const bottomSheetRef = React.useRef<any>();
17
+
18
+ const webStep = React.useMemo(() => step + 1, [step]);
19
+ const snapPoints = React.useMemo(
20
+ () => ["25%", "50%", windowHeight - 200],
21
+ []
22
+ );
23
+
24
+ React.useEffect(() => {
25
+ bottomSheetRef?.current?.snapTo(snapPoints.length - webStep);
26
+ // bottomSheetRef.current.snapTo(step);
27
+ }, [webStep, step, snapPoints]);
28
+
29
+ if (step === -1) {
30
+ return <></>;
31
+ }
32
+
33
+ return (
34
+ <View style={styles.container}>
35
+ <ScrollBottomSheet
36
+ ref={bottomSheetRef}
37
+ componentType="ScrollView"
38
+ snapPoints={snapPoints}
39
+ initialSnapIndex={0}
40
+ renderHandle={() => (
41
+ <View style={styles.header}>
42
+ <View style={styles.panelHandle} />
43
+ </View>
44
+ )}
45
+ contentContainerStyle={styles.contentContainerStyle}
46
+ >
47
+ <View
48
+ style={{
49
+ ...styles.container,
50
+ ...viewStyles,
51
+ backgroundColor: webStep !== -1 ? "grey" : "transparent",
52
+ }}
53
+ >
54
+ {children}
55
+ </View>
56
+ </ScrollBottomSheet>
57
+ </View>
58
+ );
59
+ };
60
+
61
+ export default BottomSheetComponent;
62
+
63
+ const styles = StyleSheet.create({
64
+ container: {
65
+ flex: 1,
66
+ },
67
+ contentContainerStyle: {
68
+ padding: 16,
69
+ },
70
+ header: {
71
+ alignItems: "center",
72
+ backgroundColor: "white",
73
+ paddingVertical: 20,
74
+ borderTopLeftRadius: 20,
75
+ borderTopRightRadius: 20,
76
+ },
77
+ panelHandle: {
78
+ width: 40,
79
+ height: 2,
80
+ backgroundColor: "rgba(0,0,0,0.3)",
81
+ borderRadius: 4,
82
+ },
83
+ item: {
84
+ padding: 20,
85
+ justifyContent: "center",
86
+ backgroundColor: "white",
87
+ alignItems: "center",
88
+ marginVertical: 10,
89
+ },
90
+ });
@@ -0,0 +1,2 @@
1
+ //@ts-ignore
2
+ export { default as BottomSheet } from "./BottomSheet";
@@ -0,0 +1,2 @@
1
+ //@ts-ignore
2
+ export { default as BottomSheet } from "./BottomSheet";
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ import { StyleProp, ViewStyle, TextStyle } from "react-native";
2
+
3
+ export interface BottomSheetProps {
4
+ style: StyleProp<ViewStyle | TextStyle>;
5
+ children: React.ReactNode;
6
+ step: number;
7
+ isOpen?: Boolean;
8
+ }
@@ -2,13 +2,19 @@ import * as React from "react";
2
2
  import { Text as NativeText, I18nManager } from "react-native";
3
3
  import { withTheme } from "../theming";
4
4
  class Text extends React.Component {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.state = {
8
+ nativeProps: {},
9
+ };
10
+ }
5
11
  setNativeProps(args) {
6
- return this._root && this._root.setNativeProps(args);
12
+ this.state.nativeProps = args || {};
7
13
  }
8
14
  render() {
9
15
  const { style, ...rest } = this.props;
10
16
  const writingDirection = I18nManager.isRTL ? "rtl" : "ltr";
11
- return (React.createElement(NativeText, { ...rest, ref: (c) => {
17
+ return (React.createElement(NativeText, { ...rest, ...this.state.nativeProps, ref: (c) => {
12
18
  this._root = c;
13
19
  }, style: [
14
20
  {
@@ -10,8 +10,12 @@ type Props = {
10
10
  class Text extends React.Component<Props> {
11
11
  _root: any;
12
12
 
13
+ state: any = {
14
+ nativeProps: {},
15
+ };
16
+
13
17
  setNativeProps(args: TextProps) {
14
- return this._root && this._root.setNativeProps(args);
18
+ this.state.nativeProps = args || {};
15
19
  }
16
20
 
17
21
  render() {
@@ -21,6 +25,7 @@ class Text extends React.Component<Props> {
21
25
  return (
22
26
  <NativeText
23
27
  {...rest}
28
+ {...this.state.nativeProps}
24
29
  ref={(c) => {
25
30
  this._root = c;
26
31
  }}
@@ -10,6 +10,7 @@ class TextField extends React.Component {
10
10
  constructor() {
11
11
  super(...arguments);
12
12
  this.state = {
13
+ nativeProps: {},
13
14
  labeled: new Animated.Value(this.props.value || this.props.error ? 0 : 1),
14
15
  focused: false,
15
16
  placeholder: this.props.error ? this.props.placeholder : "",
@@ -121,7 +122,10 @@ class TextField extends React.Component {
121
122
  * @internal
122
123
  */
123
124
  setNativeProps(args) {
124
- return this._root && this._root.setNativeProps(args);
125
+ this.setState((state) => ({
126
+ ...state,
127
+ nativeState: args || {},
128
+ }));
125
129
  }
126
130
  isFocused() {
127
131
  return this._root && this._root.isFocused();
@@ -381,6 +385,7 @@ class TextField extends React.Component {
381
385
  underlineColorAndroid: "transparent",
382
386
  style: inputStyles,
383
387
  ...rest,
388
+ ...this.state.nativeProps,
384
389
  value: this.state.value,
385
390
  })),
386
391
  rightIconName ? (React.createElement(Icon, { name: rightIconName, size: ICON_SIZE, color: colors.light, style: {
@@ -52,6 +52,7 @@ export type Props = {
52
52
  IconSlot;
53
53
 
54
54
  interface State {
55
+ nativeProps: any;
55
56
  labeled: Animated.Value;
56
57
  focused?: boolean;
57
58
  placeholder?: string | undefined;
@@ -73,6 +74,7 @@ class TextField extends React.Component<Props, State> {
73
74
  }
74
75
 
75
76
  state: State = {
77
+ nativeProps: {},
76
78
  labeled: new Animated.Value(this.props.value || this.props.error ? 0 : 1),
77
79
  focused: false,
78
80
  placeholder: this.props.error ? this.props.placeholder : "",
@@ -207,7 +209,10 @@ class TextField extends React.Component<Props, State> {
207
209
  * @internal
208
210
  */
209
211
  setNativeProps(args: Props) {
210
- return this._root && this._root.setNativeProps(args);
212
+ this.setState((state) => ({
213
+ ...state,
214
+ nativeState: args || {},
215
+ }));
211
216
  }
212
217
 
213
218
  isFocused() {
@@ -566,6 +571,7 @@ class TextField extends React.Component<Props, State> {
566
571
  underlineColorAndroid: "transparent",
567
572
  style: inputStyles,
568
573
  ...rest,
574
+ ...this.state.nativeProps,
569
575
  value: this.state.value,
570
576
  })}
571
577
  </View>
package/src/index.js CHANGED
@@ -29,6 +29,7 @@ export { default as Touchable } from "./components/Touchable";
29
29
  export { AccordionGroup, AccordionItem } from "./components/Accordion";
30
30
  export { ActionSheet, ActionSheetItem, ActionSheetCancel, } from "./components/ActionSheet";
31
31
  export { Swiper, SwiperItem } from "./components/Swiper";
32
+ export { BottomSheet } from "./components/BottomSheet";
32
33
  export { Center, Circle, Square, Row, Stack, Spacer, } from "./components/Layout";
33
34
  export { RadioButton, RadioButtonGroup, RadioButtonRow, RadioButtonFieldGroup, } from "./components/RadioButton/index";
34
35
  /* Deprecated: Fix or Delete! */
package/src/index.tsx CHANGED
@@ -34,6 +34,7 @@ export {
34
34
  ActionSheetCancel,
35
35
  } from "./components/ActionSheet";
36
36
  export { Swiper, SwiperItem } from "./components/Swiper";
37
+ export { BottomSheet } from "./components/BottomSheet";
37
38
 
38
39
  export {
39
40
  Center,
@@ -1,27 +1,10 @@
1
- import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, StylesPanelSections, createColorProp, createNumberProp, } from "@draftbit/types";
1
+ import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, } from "@draftbit/types";
2
2
  export const SEED_DATA = {
3
3
  name: "Audio Player",
4
4
  tag: "AudioPlayer",
5
5
  description: "Given a source URL, plays sounds & audio!",
6
6
  category: COMPONENT_TYPES.media,
7
- stylesPanelSections: [
8
- StylesPanelSections.Typography,
9
- StylesPanelSections.Background,
10
- StylesPanelSections.Borders,
11
- StylesPanelSections.Size,
12
- StylesPanelSections.MarginsAndPaddings,
13
- StylesPanelSections.Position,
14
- ],
15
- layout: {
16
- backgroundColor: "#eee",
17
- paddingLeft: 16,
18
- paddingRight: 16,
19
- paddingTop: 8,
20
- paddingBottom: 8,
21
- borderRadius: 24,
22
- flexDirection: "row",
23
- alignItems: "center",
24
- },
7
+ layout: {},
25
8
  props: {
26
9
  source: {
27
10
  group: GROUPS.data,
@@ -33,25 +16,5 @@ export const SEED_DATA = {
33
16
  formType: FORM_TYPES.sourceUrl,
34
17
  propType: PROP_TYPES.OBJECT,
35
18
  },
36
- sliderColor: createColorProp({
37
- label: "Thumb Color",
38
- defaultValue: "strong",
39
- }),
40
- completedTrackColor: createColorProp({
41
- label: "Completed Track Color",
42
- defaultValue: "background",
43
- }),
44
- remainingTrackColor: createColorProp({
45
- label: "Remaining Track Color",
46
- defaultValue: "light",
47
- }),
48
- trackThumbSize: createNumberProp({
49
- label: "Thumb Size",
50
- defaultValue: 24,
51
- }),
52
- playIconColor: createColorProp({
53
- label: "Play Icon Color",
54
- defaultValue: "strong",
55
- }),
56
19
  },
57
20
  };