@draftbit/core 46.2.4-17908.5 → 46.2.4-44e731.5

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 (62) hide show
  1. package/lib/commonjs/components/Table/index.js +55 -0
  2. package/lib/commonjs/components/Table/table.js +35 -0
  3. package/lib/commonjs/components/Table/tableCell.js +50 -0
  4. package/lib/commonjs/components/Table/tableHeader.js +41 -0
  5. package/lib/commonjs/components/Table/tablePaginator.js +17 -0
  6. package/lib/commonjs/components/Table/tableRow.js +47 -0
  7. package/lib/commonjs/components/Table/tableTitle.js +60 -0
  8. package/lib/commonjs/index.js +38 -8
  9. package/lib/commonjs/mappings/FieldSearchBarFull.js +3 -1
  10. package/lib/commonjs/mappings/table.js +103 -0
  11. package/lib/commonjs/utilities.js +2 -2
  12. package/lib/module/components/Table/index.js +6 -0
  13. package/lib/module/components/Table/table.js +23 -0
  14. package/lib/module/components/Table/tableCell.js +37 -0
  15. package/lib/module/components/Table/tableHeader.js +27 -0
  16. package/lib/module/components/Table/tablePaginator.js +6 -0
  17. package/lib/module/components/Table/tableRow.js +33 -0
  18. package/lib/module/components/Table/tableTitle.js +47 -0
  19. package/lib/module/index.js +2 -2
  20. package/lib/module/mappings/table.js +94 -0
  21. package/lib/module/utilities.js +3 -3
  22. package/lib/typescript/src/components/Table/index.d.ts +6 -0
  23. package/lib/typescript/src/components/Table/table.d.ts +8 -0
  24. package/lib/typescript/src/components/Table/tableCell.d.ts +10 -0
  25. package/lib/typescript/src/components/Table/tableHeader.d.ts +12 -0
  26. package/lib/typescript/src/components/Table/tablePaginator.d.ts +3 -0
  27. package/lib/typescript/src/components/Table/tableRow.d.ts +12 -0
  28. package/lib/typescript/src/components/Table/tableTitle.d.ts +12 -0
  29. package/lib/typescript/src/index.d.ts +1 -1
  30. package/lib/typescript/src/mappings/table.d.ts +153 -0
  31. package/lib/typescript/src/utilities.d.ts +3 -3
  32. package/package.json +3 -5
  33. package/src/components/Table/index.js +6 -0
  34. package/src/components/Table/index.tsx +6 -0
  35. package/src/components/Table/table.js +10 -0
  36. package/src/components/Table/table.tsx +22 -0
  37. package/src/components/Table/tableCell.js +21 -0
  38. package/src/components/Table/tableCell.tsx +44 -0
  39. package/src/components/Table/tableHeader.js +11 -0
  40. package/src/components/Table/tableHeader.tsx +28 -0
  41. package/src/components/Table/tablePaginator.js +5 -0
  42. package/src/components/Table/tablePaginator.tsx +10 -0
  43. package/src/components/Table/tableRow.js +16 -0
  44. package/src/components/Table/tableRow.tsx +31 -0
  45. package/src/components/Table/tableTitle.js +28 -0
  46. package/src/components/Table/tableTitle.tsx +58 -0
  47. package/src/index.js +1 -1
  48. package/src/index.tsx +9 -1
  49. package/src/mappings/table.js +137 -0
  50. package/src/mappings/table.ts +145 -0
  51. package/src/utilities.js +5 -2
  52. package/src/utilities.ts +13 -2
  53. package/lib/commonjs/components/Youtube.js +0 -73
  54. package/lib/commonjs/mappings/Youtube.js +0 -42
  55. package/lib/module/components/Youtube.js +0 -59
  56. package/lib/module/mappings/Youtube.js +0 -33
  57. package/lib/typescript/src/components/Youtube.d.ts +0 -44
  58. package/lib/typescript/src/mappings/Youtube.d.ts +0 -36
  59. package/src/components/Youtube.js +0 -38
  60. package/src/components/Youtube.tsx +0 -66
  61. package/src/mappings/Youtube.js +0 -33
  62. package/src/mappings/Youtube.ts +0 -39
@@ -0,0 +1,31 @@
1
+ import React from "react";
2
+ import { View, StyleProp, ViewStyle, StyleSheet } from "react-native";
3
+ import { Theme } from "../../styles/DefaultTheme";
4
+ import { withTheme } from "../../theming";
5
+ export interface TableRowProps {
6
+ children: React.ReactNode;
7
+ style?: StyleProp<ViewStyle>;
8
+ theme: Theme;
9
+ }
10
+
11
+ const TableRow = ({ children, style, theme, ...rest }: TableRowProps) => (
12
+ <View
13
+ {...rest}
14
+ style={[styles.container, { borderBottomColor: theme.colors.light }, style]}
15
+ >
16
+ <View style={styles.content}>{children}</View>
17
+ </View>
18
+ );
19
+
20
+ const styles = StyleSheet.create({
21
+ container: {
22
+ display: "flex",
23
+ flexDirection: "row",
24
+ },
25
+ content: {
26
+ flex: 1,
27
+ flexDirection: "row",
28
+ },
29
+ });
30
+
31
+ export default withTheme(TableRow);
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ import { View, Text, StyleSheet } from "react-native";
3
+ import { extractStyles } from "../../utilities";
4
+ const TableTitle = ({ children, style, numeric = false, isAscending = false, numberOfLines = 1, title, ...rest }) => {
5
+ const { textStyles, viewStyles } = extractStyles(style);
6
+ return (React.createElement(View, { ...rest, style: [styles.wrapper, numeric && styles.right, viewStyles] },
7
+ React.createElement(Text, { style: [isAscending ? styles.sorted : { color: "gray" }, textStyles], numberOfLines: numberOfLines },
8
+ children,
9
+ title)));
10
+ };
11
+ const styles = StyleSheet.create({
12
+ wrapper: {
13
+ flex: 1,
14
+ display: "flex",
15
+ flexDirection: "row",
16
+ },
17
+ right: {
18
+ justifyContent: "flex-end",
19
+ },
20
+ sorted: {
21
+ // marginLeft: 8,
22
+ },
23
+ icon: {
24
+ height: 24,
25
+ justifyContent: "center",
26
+ },
27
+ });
28
+ export default TableTitle;
@@ -0,0 +1,58 @@
1
+ import React from "react";
2
+ import { View, Text, StyleProp, ViewStyle, StyleSheet } from "react-native";
3
+ import { extractStyles } from "../../utilities";
4
+
5
+ export interface TableCellProps {
6
+ children: React.ReactNode;
7
+ numeric?: boolean;
8
+ isAscending: boolean;
9
+ numberOfLines?: number;
10
+ title?: string;
11
+ style?: StyleProp<ViewStyle>;
12
+ }
13
+
14
+ const TableTitle = ({
15
+ children,
16
+ style,
17
+ numeric = false,
18
+ isAscending = false,
19
+ numberOfLines = 1,
20
+ title,
21
+ ...rest
22
+ }: TableCellProps) => {
23
+ const { textStyles, viewStyles } = extractStyles(style);
24
+ return (
25
+ <View
26
+ {...rest}
27
+ style={[styles.wrapper, numeric && styles.right, viewStyles]}
28
+ >
29
+ <Text
30
+ style={[isAscending ? styles.sorted : { color: "gray" }, textStyles]}
31
+ numberOfLines={numberOfLines}
32
+ >
33
+ {children}
34
+ {title}
35
+ </Text>
36
+ </View>
37
+ );
38
+ };
39
+
40
+ const styles = StyleSheet.create({
41
+ wrapper: {
42
+ flex: 1,
43
+ display: "flex",
44
+ flexDirection: "row",
45
+ },
46
+ right: {
47
+ justifyContent: "flex-end",
48
+ },
49
+ sorted: {
50
+ // marginLeft: 8,
51
+ },
52
+ icon: {
53
+ height: 24,
54
+ justifyContent: "center",
55
+ },
56
+ });
57
+
58
+ export default TableTitle;
package/src/index.js CHANGED
@@ -31,6 +31,7 @@ export { ActionSheet, ActionSheetItem, ActionSheetCancel, } from "./components/A
31
31
  export { Swiper, SwiperItem } from "./components/Swiper";
32
32
  export { Center, Circle, Square, Row, Stack, Spacer, } from "./components/Layout";
33
33
  export { RadioButton, RadioButtonGroup, RadioButtonRow, RadioButtonFieldGroup, } from "./components/RadioButton/index";
34
+ export { Table, TableRow, TablePaginator, TableHeader, TableCell, TableTitle, } from "./components/Table";
34
35
  /* Deprecated: Fix or Delete! */
35
36
  export { default as Button } from "./components/DeprecatedButton";
36
37
  export { default as CardBlock } from "./components/CardBlock";
@@ -50,5 +51,4 @@ export { default as RowHeadlineImageIcon } from "./components/RowHeadlineImageIc
50
51
  export { default as Slider } from "./components/Slider";
51
52
  export { default as Stepper } from "./components/Stepper";
52
53
  export { useAuthState } from "./components/useAuthState";
53
- export { default as Youtube } from "./components/Youtube";
54
54
  // a comment to fix sourcemap comment issue
package/src/index.tsx CHANGED
@@ -51,6 +51,15 @@ export {
51
51
  RadioButtonFieldGroup,
52
52
  } from "./components/RadioButton/index";
53
53
 
54
+ export {
55
+ Table,
56
+ TableRow,
57
+ TablePaginator,
58
+ TableHeader,
59
+ TableCell,
60
+ TableTitle,
61
+ } from "./components/Table";
62
+
54
63
  /* Deprecated: Fix or Delete! */
55
64
  export { default as Button } from "./components/DeprecatedButton";
56
65
  export { default as CardBlock } from "./components/CardBlock";
@@ -70,6 +79,5 @@ export { default as RowHeadlineImageIcon } from "./components/RowHeadlineImageIc
70
79
  export { default as Slider } from "./components/Slider";
71
80
  export { default as Stepper } from "./components/Stepper";
72
81
  export { useAuthState } from "./components/useAuthState";
73
- export { default as Youtube } from "./components/Youtube";
74
82
 
75
83
  // a comment to fix sourcemap comment issue
@@ -0,0 +1,137 @@
1
+ import { COMPONENT_TYPES, GROUPS, createBoolProp, createTextProp, createNumberProp, StylesPanelSections, } from "@draftbit/types";
2
+ export const SEED_DATA = [
3
+ {
4
+ name: "Table",
5
+ tag: "Table",
6
+ category: COMPONENT_TYPES.container,
7
+ stylesPanelSections: [
8
+ StylesPanelSections.Background,
9
+ StylesPanelSections.Borders,
10
+ StylesPanelSections.Size,
11
+ StylesPanelSections.MarginsAndPaddings,
12
+ StylesPanelSections.Position,
13
+ StylesPanelSections.Effects,
14
+ ],
15
+ layout: {
16
+ width: "100%",
17
+ },
18
+ props: {},
19
+ },
20
+ {
21
+ name: "Table Row",
22
+ tag: "TableRow",
23
+ category: COMPONENT_TYPES.container,
24
+ stylesPanelSections: [
25
+ StylesPanelSections.Background,
26
+ StylesPanelSections.Borders,
27
+ StylesPanelSections.Size,
28
+ StylesPanelSections.MarginsAndPaddings,
29
+ StylesPanelSections.Position,
30
+ StylesPanelSections.Effects,
31
+ ],
32
+ layout: {
33
+ paddingLeft: 16,
34
+ paddingRight: 16,
35
+ borderBottomWidth: 1,
36
+ borderStyle: "solid",
37
+ },
38
+ props: {},
39
+ },
40
+ {
41
+ name: "Table Cell",
42
+ tag: "TableCell",
43
+ category: COMPONENT_TYPES.container,
44
+ layout: {
45
+ paddingTop: 16,
46
+ paddingBottom: 16,
47
+ paddingLeft: 8,
48
+ paddingRight: 8,
49
+ },
50
+ stylesPanelSections: [
51
+ StylesPanelSections.Typography,
52
+ StylesPanelSections.Background,
53
+ StylesPanelSections.Borders,
54
+ StylesPanelSections.Size,
55
+ StylesPanelSections.MarginsAndPaddings,
56
+ StylesPanelSections.Position,
57
+ StylesPanelSections.Effects,
58
+ ],
59
+ props: {
60
+ numeric: createBoolProp({
61
+ label: "Is Numeric Cell?",
62
+ description: "Does the cell contain a numeric value?",
63
+ group: GROUPS.data,
64
+ }),
65
+ value: createTextProp({
66
+ label: "Cell Value",
67
+ description: "Table Cell Value",
68
+ group: GROUPS.data,
69
+ }),
70
+ },
71
+ },
72
+ {
73
+ name: "Table Header",
74
+ tag: "TableHeader",
75
+ category: COMPONENT_TYPES.container,
76
+ stylesPanelSections: [
77
+ StylesPanelSections.Background,
78
+ StylesPanelSections.Borders,
79
+ StylesPanelSections.Size,
80
+ StylesPanelSections.MarginsAndPaddings,
81
+ StylesPanelSections.Position,
82
+ StylesPanelSections.Effects,
83
+ ],
84
+ layout: {
85
+ paddingLeft: 16,
86
+ paddingRight: 16,
87
+ borderBottomWidth: 1,
88
+ borderStyle: "solid",
89
+ backgroundColor: "#EFEFEF",
90
+ },
91
+ props: {},
92
+ },
93
+ {
94
+ name: "Table Title",
95
+ tag: "TableTitle",
96
+ category: COMPONENT_TYPES.container,
97
+ stylesPanelSections: [
98
+ StylesPanelSections.Typography,
99
+ StylesPanelSections.Background,
100
+ StylesPanelSections.Borders,
101
+ StylesPanelSections.Size,
102
+ StylesPanelSections.MarginsAndPaddings,
103
+ StylesPanelSections.Position,
104
+ StylesPanelSections.Effects,
105
+ ],
106
+ layout: {
107
+ fontSize: 14,
108
+ fontWeight: "500",
109
+ paddingTop: 16,
110
+ paddingBottom: 16,
111
+ paddingLeft: 8,
112
+ paddingRight: 8,
113
+ },
114
+ props: {
115
+ numeric: createBoolProp({
116
+ label: "Is Numeric Cell?",
117
+ description: "Does the cell contain a numeric value?",
118
+ group: GROUPS.data,
119
+ }),
120
+ value: createTextProp({
121
+ label: "Cell Value",
122
+ description: "Table Cell Value",
123
+ group: GROUPS.data,
124
+ }),
125
+ isAscending: createBoolProp({
126
+ label: "Is Ascending?",
127
+ description: "Does the cell contain a numeric value?",
128
+ group: GROUPS.data,
129
+ }),
130
+ numberOfLines: createNumberProp({
131
+ label: "Number of Lines",
132
+ description: "Number of Lines",
133
+ group: GROUPS.basic,
134
+ }),
135
+ },
136
+ },
137
+ ];
@@ -0,0 +1,145 @@
1
+ import {
2
+ COMPONENT_TYPES,
3
+ GROUPS,
4
+ createBoolProp,
5
+ createTextProp,
6
+ createNumberProp,
7
+ StylesPanelSections,
8
+ } from "@draftbit/types";
9
+
10
+ export const SEED_DATA = [
11
+ {
12
+ name: "Table",
13
+ tag: "Table",
14
+ category: COMPONENT_TYPES.container,
15
+ stylesPanelSections: [
16
+ StylesPanelSections.Background,
17
+ StylesPanelSections.Borders,
18
+ StylesPanelSections.Size,
19
+ StylesPanelSections.MarginsAndPaddings,
20
+ StylesPanelSections.Position,
21
+ StylesPanelSections.Effects,
22
+ ],
23
+ layout: {
24
+ width: "100%",
25
+ },
26
+ props: {},
27
+ },
28
+ {
29
+ name: "Table Row",
30
+ tag: "TableRow",
31
+ category: COMPONENT_TYPES.container,
32
+ stylesPanelSections: [
33
+ StylesPanelSections.Background,
34
+ StylesPanelSections.Borders,
35
+ StylesPanelSections.Size,
36
+ StylesPanelSections.MarginsAndPaddings,
37
+ StylesPanelSections.Position,
38
+ StylesPanelSections.Effects,
39
+ ],
40
+ layout: {
41
+ paddingLeft: 16,
42
+ paddingRight: 16,
43
+ borderBottomWidth: 1,
44
+ borderStyle: "solid",
45
+ },
46
+ props: {},
47
+ },
48
+ {
49
+ name: "Table Cell",
50
+ tag: "TableCell",
51
+ category: COMPONENT_TYPES.container,
52
+ layout: {
53
+ paddingTop: 16,
54
+ paddingBottom: 16,
55
+ paddingLeft: 8,
56
+ paddingRight: 8,
57
+ },
58
+ stylesPanelSections: [
59
+ StylesPanelSections.Typography,
60
+ StylesPanelSections.Background,
61
+ StylesPanelSections.Borders,
62
+ StylesPanelSections.Size,
63
+ StylesPanelSections.MarginsAndPaddings,
64
+ StylesPanelSections.Position,
65
+ StylesPanelSections.Effects,
66
+ ],
67
+ props: {
68
+ numeric: createBoolProp({
69
+ label: "Is Numeric Cell?",
70
+ description: "Does the cell contain a numeric value?",
71
+ group: GROUPS.data,
72
+ }),
73
+ value: createTextProp({
74
+ label: "Cell Value",
75
+ description: "Table Cell Value",
76
+ group: GROUPS.data,
77
+ }),
78
+ },
79
+ },
80
+ {
81
+ name: "Table Header",
82
+ tag: "TableHeader",
83
+ category: COMPONENT_TYPES.container,
84
+ stylesPanelSections: [
85
+ StylesPanelSections.Background,
86
+ StylesPanelSections.Borders,
87
+ StylesPanelSections.Size,
88
+ StylesPanelSections.MarginsAndPaddings,
89
+ StylesPanelSections.Position,
90
+ StylesPanelSections.Effects,
91
+ ],
92
+ layout: {
93
+ paddingLeft: 16,
94
+ paddingRight: 16,
95
+ borderBottomWidth: 1,
96
+ borderStyle: "solid",
97
+ backgroundColor: "#EFEFEF",
98
+ },
99
+ props: {},
100
+ },
101
+ {
102
+ name: "Table Title",
103
+ tag: "TableTitle",
104
+ category: COMPONENT_TYPES.container,
105
+ stylesPanelSections: [
106
+ StylesPanelSections.Typography,
107
+ StylesPanelSections.Background,
108
+ StylesPanelSections.Borders,
109
+ StylesPanelSections.Size,
110
+ StylesPanelSections.MarginsAndPaddings,
111
+ StylesPanelSections.Position,
112
+ StylesPanelSections.Effects,
113
+ ],
114
+ layout: {
115
+ fontSize: 14,
116
+ fontWeight: "500",
117
+ paddingTop: 16,
118
+ paddingBottom: 16,
119
+ paddingLeft: 8,
120
+ paddingRight: 8,
121
+ },
122
+ props: {
123
+ numeric: createBoolProp({
124
+ label: "Is Numeric Cell?",
125
+ description: "Does the cell contain a numeric value?",
126
+ group: GROUPS.data,
127
+ }),
128
+ value: createTextProp({
129
+ label: "Cell Value",
130
+ description: "Table Cell Value",
131
+ group: GROUPS.data,
132
+ }),
133
+ isAscending: createBoolProp({
134
+ label: "Is Ascending?",
135
+ description: "Does the cell contain a numeric value?",
136
+ group: GROUPS.data,
137
+ }),
138
+ numberOfLines: createNumberProp({
139
+ label: "Number of Lines",
140
+ description: "Number of Lines",
141
+ group: GROUPS.basic,
142
+ }),
143
+ },
144
+ },
145
+ ];
package/src/utilities.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { StyleSheet } from "react-native";
2
- import { isString, isNumber, pick, pickBy, identity } from "lodash";
2
+ import { isString, isNumber, pick, pickBy, identity, omitBy, isNil, } from "lodash";
3
3
  export function extractStyles(style) {
4
4
  const { color, fontFamily, fontWeight, fontSize, lineHeight, letterSpacing, textTransform, textAlign, textDecorationLine, textDecorationColor, textDecorationStyle, ...viewStyles } = StyleSheet.flatten(style || {});
5
5
  const textStyles = {
@@ -15,7 +15,10 @@ export function extractStyles(style) {
15
15
  textDecorationColor,
16
16
  textDecorationStyle,
17
17
  };
18
- return { viewStyles, textStyles };
18
+ return {
19
+ viewStyles: omitBy(viewStyles, isNil),
20
+ textStyles: omitBy(textStyles, isNil),
21
+ };
19
22
  }
20
23
  export const borderStyleNames = [
21
24
  "borderRadius",
package/src/utilities.ts CHANGED
@@ -1,5 +1,13 @@
1
1
  import { StyleSheet, StyleProp, TextStyle } from "react-native";
2
- import { isString, isNumber, pick, pickBy, identity } from "lodash";
2
+ import {
3
+ isString,
4
+ isNumber,
5
+ pick,
6
+ pickBy,
7
+ identity,
8
+ omitBy,
9
+ isNil,
10
+ } from "lodash";
3
11
 
4
12
  export function extractStyles(style: StyleProp<any>) {
5
13
  const {
@@ -31,7 +39,10 @@ export function extractStyles(style: StyleProp<any>) {
31
39
  textDecorationStyle,
32
40
  };
33
41
 
34
- return { viewStyles, textStyles };
42
+ return {
43
+ viewStyles: omitBy(viewStyles, isNil),
44
+ textStyles: omitBy(textStyles, isNil),
45
+ };
35
46
  }
36
47
 
37
48
  export const borderStyleNames = [
@@ -1,73 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = exports.SEED_DATA = void 0;
7
-
8
- var _types = require("@draftbit/types");
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _reactNativeYoutubeIframe = _interopRequireDefault(require("react-native-youtube-iframe"));
13
-
14
- var _utilities = require("../utilities");
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- const Youtube = _ref => {
19
- let {
20
- videoId,
21
- playlist,
22
- style,
23
- mute,
24
- autoplay
25
- } = _ref;
26
- const {
27
- viewStyles: {
28
- height,
29
- width
30
- }
31
- } = (0, _utilities.extractStyles)(style);
32
- return /*#__PURE__*/_react.default.createElement(_reactNativeYoutubeIframe.default, {
33
- height: height,
34
- width: width,
35
- play: autoplay,
36
- videoId: videoId,
37
- playList: playlist,
38
- mute: mute
39
- });
40
- };
41
-
42
- var _default = Youtube;
43
- exports.default = _default;
44
- const SEED_DATA = {
45
- name: "Youtube",
46
- tag: "Youtube",
47
- description: "Youtube Component",
48
- category: _types.COMPONENT_TYPES.media,
49
- layout: {
50
- width: "100%"
51
- },
52
- props: {
53
- videoId: (0, _types.createTextProp)({
54
- label: "VideoId",
55
- description: "Youtube Video ID"
56
- }),
57
- playlist: (0, _types.createTextProp)({
58
- label: "PlayList",
59
- description: "Playlist ID"
60
- }),
61
- mute: (0, _types.createBoolProp)({
62
- label: "Mute",
63
- description: "Whether to mute video",
64
- defaultValue: false
65
- }),
66
- autoplay: (0, _types.createBoolProp)({
67
- label: "Autoplay",
68
- description: "Whether to Autoplay video",
69
- defaultValue: false
70
- })
71
- }
72
- };
73
- exports.SEED_DATA = SEED_DATA;
@@ -1,42 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.SEED_DATA = void 0;
7
-
8
- var _types = require("@draftbit/types");
9
-
10
- const SEED_DATA = {
11
- name: "Youtube",
12
- tag: "Youtube",
13
- description: "Given a VideoId orPlaylist and play Youtube video",
14
- doc_link: "https://lonelycpp.github.io/react-native-youtube-iframe",
15
- code_link: "https://github.com/LonelyCpp/react-native-youtube-iframe",
16
- category: _types.COMPONENT_TYPES.media,
17
- stylesPanelSections: [_types.StylesPanelSections.Size],
18
- layout: {
19
- height: 250
20
- },
21
- props: {
22
- videoId: (0, _types.createTextProp)({
23
- label: "Video ID",
24
- description: "VideoId of the Youtube video.",
25
- defaultValue: "nwMUpDESXrI"
26
- }),
27
- playlist: (0, _types.createTextProp)({
28
- label: "Playlist",
29
- description: "Playlist of the Youtube videos.",
30
- defaultValue: "PLUa6TiXzjIrwowt6P-uGCJm8ovm-9S1Ks"
31
- }),
32
- mute: (0, _types.createStaticBoolProp)({
33
- label: "Mute Audio",
34
- description: "Mute the audio of the video."
35
- }),
36
- autoplay: (0, _types.createStaticBoolProp)({
37
- label: "Auto Play",
38
- description: "Autoplay the video on load."
39
- })
40
- }
41
- };
42
- exports.SEED_DATA = SEED_DATA;
@@ -1,59 +0,0 @@
1
- import { COMPONENT_TYPES, createBoolProp, createTextProp } from "@draftbit/types";
2
- import React from "react";
3
- import YoutubePlayer from "react-native-youtube-iframe";
4
- import { extractStyles } from "../utilities";
5
-
6
- const Youtube = _ref => {
7
- let {
8
- videoId,
9
- playlist,
10
- style,
11
- mute,
12
- autoplay
13
- } = _ref;
14
- const {
15
- viewStyles: {
16
- height,
17
- width
18
- }
19
- } = extractStyles(style);
20
- return /*#__PURE__*/React.createElement(YoutubePlayer, {
21
- height: height,
22
- width: width,
23
- play: autoplay,
24
- videoId: videoId,
25
- playList: playlist,
26
- mute: mute
27
- });
28
- };
29
-
30
- export default Youtube;
31
- export const SEED_DATA = {
32
- name: "Youtube",
33
- tag: "Youtube",
34
- description: "Youtube Component",
35
- category: COMPONENT_TYPES.media,
36
- layout: {
37
- width: "100%"
38
- },
39
- props: {
40
- videoId: createTextProp({
41
- label: "VideoId",
42
- description: "Youtube Video ID"
43
- }),
44
- playlist: createTextProp({
45
- label: "PlayList",
46
- description: "Playlist ID"
47
- }),
48
- mute: createBoolProp({
49
- label: "Mute",
50
- description: "Whether to mute video",
51
- defaultValue: false
52
- }),
53
- autoplay: createBoolProp({
54
- label: "Autoplay",
55
- description: "Whether to Autoplay video",
56
- defaultValue: false
57
- })
58
- }
59
- };
@@ -1,33 +0,0 @@
1
- import { COMPONENT_TYPES, createStaticBoolProp, createTextProp, StylesPanelSections } from "@draftbit/types";
2
- export const SEED_DATA = {
3
- name: "Youtube",
4
- tag: "Youtube",
5
- description: "Given a VideoId orPlaylist and play Youtube video",
6
- doc_link: "https://lonelycpp.github.io/react-native-youtube-iframe",
7
- code_link: "https://github.com/LonelyCpp/react-native-youtube-iframe",
8
- category: COMPONENT_TYPES.media,
9
- stylesPanelSections: [StylesPanelSections.Size],
10
- layout: {
11
- height: 250
12
- },
13
- props: {
14
- videoId: createTextProp({
15
- label: "Video ID",
16
- description: "VideoId of the Youtube video.",
17
- defaultValue: "nwMUpDESXrI"
18
- }),
19
- playlist: createTextProp({
20
- label: "Playlist",
21
- description: "Playlist of the Youtube videos.",
22
- defaultValue: "PLUa6TiXzjIrwowt6P-uGCJm8ovm-9S1Ks"
23
- }),
24
- mute: createStaticBoolProp({
25
- label: "Mute Audio",
26
- description: "Mute the audio of the video."
27
- }),
28
- autoplay: createStaticBoolProp({
29
- label: "Auto Play",
30
- description: "Autoplay the video on load."
31
- })
32
- }
33
- };