@draftbit/core 47.0.0-alpha.1 → 47.0.0-c416b1.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 (194) hide show
  1. package/lib/commonjs/components/Stepper.js +1 -0
  2. package/lib/commonjs/index.js +0 -7
  3. package/lib/commonjs/index.js.map +1 -1
  4. package/lib/commonjs/mappings/NativeBase/Layout/AspectRatio.js +17 -0
  5. package/lib/commonjs/mappings/NativeBase/Layout/AspectRatio.js.map +1 -0
  6. package/lib/commonjs/mappings/NativeBase/Layout/Box.js +17 -0
  7. package/lib/commonjs/mappings/NativeBase/Layout/Box.js.map +1 -0
  8. package/lib/commonjs/mappings/NativeBase/Layout/Center.js +31 -0
  9. package/lib/commonjs/mappings/NativeBase/Layout/Center.js.map +1 -0
  10. package/lib/commonjs/mappings/NativeBase/Layout/Column.js +17 -0
  11. package/lib/commonjs/mappings/NativeBase/Layout/Column.js.map +1 -0
  12. package/lib/commonjs/mappings/NativeBase/Layout/Container.js +17 -0
  13. package/lib/commonjs/mappings/NativeBase/Layout/Container.js.map +1 -0
  14. package/lib/commonjs/mappings/NativeBase/Layout/Row.js +17 -0
  15. package/lib/commonjs/mappings/NativeBase/Layout/Row.js.map +1 -0
  16. package/lib/commonjs/mappings/NativeBase/Layout/Stack.js +17 -0
  17. package/lib/commonjs/mappings/NativeBase/Layout/Stack.js.map +1 -0
  18. package/lib/commonjs/mappings/NativeBase/Layout/ZStack.js +17 -0
  19. package/lib/commonjs/mappings/NativeBase/Layout/ZStack.js.map +1 -0
  20. package/lib/commonjs/mappings/View.js.map +1 -1
  21. package/lib/module/components/Stepper.js +1 -0
  22. package/lib/module/index.js +2 -0
  23. package/lib/module/index.js.map +1 -1
  24. package/lib/module/mappings/NativeBase/Layout/AspectRatio.js +10 -0
  25. package/lib/module/mappings/NativeBase/Layout/AspectRatio.js.map +1 -0
  26. package/lib/module/mappings/NativeBase/Layout/Box.js +10 -0
  27. package/lib/module/mappings/NativeBase/Layout/Box.js.map +1 -0
  28. package/lib/module/mappings/NativeBase/Layout/Center.js +24 -0
  29. package/lib/module/mappings/NativeBase/Layout/Center.js.map +1 -0
  30. package/lib/module/mappings/NativeBase/Layout/Column.js +10 -0
  31. package/lib/module/mappings/NativeBase/Layout/Column.js.map +1 -0
  32. package/lib/module/mappings/NativeBase/Layout/Container.js +10 -0
  33. package/lib/module/mappings/NativeBase/Layout/Container.js.map +1 -0
  34. package/lib/module/mappings/NativeBase/Layout/Row.js +10 -0
  35. package/lib/module/mappings/NativeBase/Layout/Row.js.map +1 -0
  36. package/lib/module/mappings/NativeBase/Layout/Stack.js +10 -0
  37. package/lib/module/mappings/NativeBase/Layout/Stack.js.map +1 -0
  38. package/lib/module/mappings/NativeBase/Layout/ZStack.js +10 -0
  39. package/lib/module/mappings/NativeBase/Layout/ZStack.js.map +1 -0
  40. package/lib/typescript/src/index.d.ts +0 -1
  41. package/lib/typescript/src/index.d.ts.map +1 -1
  42. package/lib/typescript/src/mappings/NativeBase/Layout/AspectRatio.d.ts +9 -0
  43. package/lib/typescript/src/mappings/NativeBase/Layout/AspectRatio.d.ts.map +1 -0
  44. package/lib/typescript/src/mappings/NativeBase/Layout/Box.d.ts +9 -0
  45. package/lib/typescript/src/mappings/NativeBase/Layout/Box.d.ts.map +1 -0
  46. package/lib/typescript/src/mappings/NativeBase/Layout/Center.d.ts +9 -0
  47. package/lib/typescript/src/mappings/NativeBase/Layout/Center.d.ts.map +1 -0
  48. package/lib/typescript/src/mappings/NativeBase/Layout/Column.d.ts +9 -0
  49. package/lib/typescript/src/mappings/NativeBase/Layout/Column.d.ts.map +1 -0
  50. package/lib/typescript/src/mappings/NativeBase/Layout/Container.d.ts +9 -0
  51. package/lib/typescript/src/mappings/NativeBase/Layout/Container.d.ts.map +1 -0
  52. package/lib/typescript/src/mappings/NativeBase/Layout/Row.d.ts +9 -0
  53. package/lib/typescript/src/mappings/NativeBase/Layout/Row.d.ts.map +1 -0
  54. package/lib/typescript/src/mappings/NativeBase/Layout/Stack.d.ts +9 -0
  55. package/lib/typescript/src/mappings/NativeBase/Layout/Stack.d.ts.map +1 -0
  56. package/lib/typescript/src/mappings/NativeBase/Layout/ZStack.d.ts +9 -0
  57. package/lib/typescript/src/mappings/NativeBase/Layout/ZStack.d.ts.map +1 -0
  58. package/package.json +3 -3
  59. package/src/Provider.js +9 -0
  60. package/src/components/Accordion/AccordionGroup.js +44 -0
  61. package/src/components/Accordion/AccordionItem.js +32 -0
  62. package/src/components/Accordion/index.js +2 -0
  63. package/src/components/ActionSheet/ActionSheet.js +45 -0
  64. package/src/components/ActionSheet/ActionSheetCancel.js +6 -0
  65. package/src/components/ActionSheet/ActionSheetItem.js +30 -0
  66. package/src/components/ActionSheet/index.js +3 -0
  67. package/src/components/Banner.js +109 -0
  68. package/src/components/Button.js +114 -0
  69. package/src/components/Checkbox/Checkbox.js +63 -0
  70. package/src/components/Checkbox/CheckboxGroup.js +21 -0
  71. package/src/components/Checkbox/CheckboxGroupRow.js +77 -0
  72. package/src/components/Checkbox/CheckboxRow.js +78 -0
  73. package/src/components/Checkbox/context.js +14 -0
  74. package/src/components/Checkbox/index.js +3 -0
  75. package/src/components/Config.js +64 -0
  76. package/src/components/DatePicker/DatePicker.js +368 -0
  77. package/src/components/DatePicker/DatePickerComponent.js +13 -0
  78. package/src/components/DatePicker/DatePickerComponent.web.js +30 -0
  79. package/src/components/DatePicker/DatePickerComponentType.js +1 -0
  80. package/src/components/DeprecatedButton.js +95 -0
  81. package/src/components/Elevation.js +20 -0
  82. package/src/components/FormRow.js +19 -0
  83. package/src/components/IconButton.js +35 -0
  84. package/src/components/Layout.js +50 -0
  85. package/src/components/NumberInput.js +49 -0
  86. package/src/components/Picker/Picker.js +267 -0
  87. package/src/components/Picker/PickerComponent.android.js +69 -0
  88. package/src/components/Picker/PickerComponent.ios.js +79 -0
  89. package/src/components/Picker/PickerComponent.web.js +70 -0
  90. package/src/components/Picker/PickerTypes.js +1 -0
  91. package/src/components/Portal/Portal.js +35 -0
  92. package/src/components/Portal/PortalConsumer.js +27 -0
  93. package/src/components/Portal/PortalHost.js +107 -0
  94. package/src/components/Portal/PortalManager.js +32 -0
  95. package/src/components/RadioButton/RadioButton.js +17 -0
  96. package/src/components/RadioButton/RadioButtonFieldGroup.js +17 -0
  97. package/src/components/RadioButton/RadioButtonGroup.js +43 -0
  98. package/src/components/RadioButton/RadioButtonRow.js +76 -0
  99. package/src/components/RadioButton/context.js +14 -0
  100. package/src/components/RadioButton/index.js +4 -0
  101. package/src/components/SVG.js +13 -0
  102. package/src/components/ScreenContainer.js +34 -0
  103. package/src/components/Slider.js +63 -0
  104. package/src/components/StarRating.js +50 -0
  105. package/src/components/Stepper.js +39 -0
  106. package/src/components/Surface.js +32 -0
  107. package/src/components/Swiper/Swiper.js +29 -0
  108. package/src/components/Swiper/SwiperItem.js +9 -0
  109. package/src/components/Swiper/index.js +2 -0
  110. package/src/components/Switch.js +56 -0
  111. package/src/components/Text.js +33 -0
  112. package/src/components/TextField.js +428 -0
  113. package/src/components/Touchable.js +12 -0
  114. package/src/components/Touchable.web.js +2 -0
  115. package/src/constants.js +10 -0
  116. package/src/hooks.js +12 -0
  117. package/src/index.js +37 -0
  118. package/src/index.tsx +2 -0
  119. package/src/interfaces/Icon.js +8 -0
  120. package/src/mappings/Accordion.js +41 -0
  121. package/src/mappings/AccordionItem.js +16 -0
  122. package/src/mappings/ActionSheet.js +13 -0
  123. package/src/mappings/ActionSheetCancel.js +19 -0
  124. package/src/mappings/ActionSheetItem.js +23 -0
  125. package/src/mappings/ActivityIndicator.js +58 -0
  126. package/src/mappings/AudioPlayer.js +20 -0
  127. package/src/mappings/BlurView.js +42 -0
  128. package/src/mappings/Button.js +87 -0
  129. package/src/mappings/Checkbox.js +46 -0
  130. package/src/mappings/CheckboxGroup.js +26 -0
  131. package/src/mappings/CheckboxRow.js +61 -0
  132. package/src/mappings/CustomCode.js +8 -0
  133. package/src/mappings/DatePicker.js +157 -0
  134. package/src/mappings/Fetch.js +13 -0
  135. package/src/mappings/FlashList.js +33 -0
  136. package/src/mappings/FlatList.js +24 -0
  137. package/src/mappings/Icon.js +32 -0
  138. package/src/mappings/IconButton.js +35 -0
  139. package/src/mappings/Image.js +35 -0
  140. package/src/mappings/ImageBackground.js +29 -0
  141. package/src/mappings/KeyboardAvoidingView.js +41 -0
  142. package/src/mappings/KeyboardAwareScrollView.js +50 -0
  143. package/src/mappings/Layout.js +200 -0
  144. package/src/mappings/LinearGradient.js +77 -0
  145. package/src/mappings/MapCallout.js +21 -0
  146. package/src/mappings/MapMarker.js +47 -0
  147. package/src/mappings/MapView.js +139 -0
  148. package/src/mappings/Modal.js +42 -0
  149. package/src/mappings/NativeBase/Layout/AspectRatio.js +9 -0
  150. package/src/mappings/NativeBase/Layout/AspectRatio.ts +11 -0
  151. package/src/mappings/NativeBase/Layout/Box.js +9 -0
  152. package/src/mappings/NativeBase/Layout/Box.ts +11 -0
  153. package/src/mappings/NativeBase/Layout/Center.js +27 -0
  154. package/src/mappings/NativeBase/Layout/Center.ts +28 -0
  155. package/src/mappings/NativeBase/Layout/Column.js +9 -0
  156. package/src/mappings/NativeBase/Layout/Column.ts +10 -0
  157. package/src/mappings/NativeBase/Layout/Container.js +9 -0
  158. package/src/mappings/NativeBase/Layout/Container.ts +11 -0
  159. package/src/mappings/NativeBase/Layout/Row.js +9 -0
  160. package/src/mappings/NativeBase/Layout/Row.ts +10 -0
  161. package/src/mappings/NativeBase/Layout/Stack.js +9 -0
  162. package/src/mappings/NativeBase/Layout/Stack.ts +11 -0
  163. package/src/mappings/NativeBase/Layout/ZStack.js +9 -0
  164. package/src/mappings/NativeBase/Layout/ZStack.ts +10 -0
  165. package/src/mappings/NumberInput.js +254 -0
  166. package/src/mappings/Picker.js +148 -0
  167. package/src/mappings/RadioButton.js +51 -0
  168. package/src/mappings/RadioButtonGroup.js +17 -0
  169. package/src/mappings/RadioButtonRow.js +42 -0
  170. package/src/mappings/SVG.js +20 -0
  171. package/src/mappings/SafeAreaView.js +33 -0
  172. package/src/mappings/ScrollView.js +31 -0
  173. package/src/mappings/Slider.js +60 -0
  174. package/src/mappings/StarRating.js +43 -0
  175. package/src/mappings/Stepper.js +29 -0
  176. package/src/mappings/Surface.js +14 -0
  177. package/src/mappings/Swiper.js +60 -0
  178. package/src/mappings/SwiperItem.js +8 -0
  179. package/src/mappings/Switch.js +81 -0
  180. package/src/mappings/Text.js +251 -0
  181. package/src/mappings/TextArea.js +263 -0
  182. package/src/mappings/TextField.js +381 -0
  183. package/src/mappings/TextInput.js +391 -0
  184. package/src/mappings/Touchable.js +17 -0
  185. package/src/mappings/Video.js +81 -0
  186. package/src/mappings/View.js +207 -0
  187. package/src/mappings/WebView.js +88 -0
  188. package/src/styles/DarkTheme.js +26 -0
  189. package/src/styles/DefaultTheme.js +111 -0
  190. package/src/styles/fonts.js +62 -0
  191. package/src/styles/overlay.js +60 -0
  192. package/src/styles/shadow.js +51 -0
  193. package/src/theming.js +3 -0
  194. package/src/utilities.js +102 -0
@@ -0,0 +1,58 @@
1
+ import { COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, GROUPS, StylesPanelSections, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Activity Indicator",
4
+ tag: "ActivityIndicator",
5
+ description: "Displays a circular loading indicator.",
6
+ doc_link: "https://docs.expo.io/versions/latest/react-native/activityindicator/",
7
+ code_link: "https://github.com/expo/expo/blob/master/ios/versioned-react-native/ABI32_0_0/Libraries/Components/ActivityIndicator/ActivityIndicator.js",
8
+ category: COMPONENT_TYPES.utility,
9
+ stylesPanelSections: [
10
+ StylesPanelSections.Size,
11
+ StylesPanelSections.Margins,
12
+ StylesPanelSections.Borders,
13
+ ],
14
+ layout: { width: 36, height: 36 },
15
+ props: {
16
+ size: {
17
+ label: "Size",
18
+ description: "The size of the loading indicator (Default: small)",
19
+ options: ["small", "large"],
20
+ formType: FORM_TYPES.flatArray,
21
+ propType: PROP_TYPES.STRING,
22
+ editable: true,
23
+ required: false,
24
+ defaultValue: "small",
25
+ group: GROUPS.basic,
26
+ },
27
+ animating: {
28
+ label: "Spinning",
29
+ description: "Whether to show the loading indicator (Default: true)",
30
+ formType: FORM_TYPES.boolean,
31
+ propType: PROP_TYPES.BOOLEAN,
32
+ editable: true,
33
+ required: false,
34
+ defaultValue: true,
35
+ group: GROUPS.basic,
36
+ },
37
+ hidesWhenStopped: {
38
+ label: "Hide When Stopped",
39
+ description: "Whether the indicator should hide when not animating (Default: true)",
40
+ formType: FORM_TYPES.boolean,
41
+ propType: PROP_TYPES.BOOLEAN,
42
+ editable: true,
43
+ required: false,
44
+ defaultValue: true,
45
+ group: GROUPS.basic,
46
+ },
47
+ color: {
48
+ label: "Color",
49
+ description: "The color of the loading indicator (Default: gray)",
50
+ formType: FORM_TYPES.color,
51
+ propType: PROP_TYPES.THEME,
52
+ editable: true,
53
+ required: false,
54
+ defaultValue: null,
55
+ group: GROUPS.basic,
56
+ },
57
+ },
58
+ };
@@ -0,0 +1,20 @@
1
+ import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Audio Player",
4
+ tag: "AudioPlayer",
5
+ description: "Given a source URL, plays sounds & audio!",
6
+ category: COMPONENT_TYPES.media,
7
+ layout: {},
8
+ props: {
9
+ source: {
10
+ group: GROUPS.data,
11
+ label: "Source",
12
+ description: "The source URL for the audio file.",
13
+ editable: true,
14
+ required: true,
15
+ defaultValue: "https://static.draftbit.com/audio/intro-to-draftbit-audio.mp3",
16
+ formType: FORM_TYPES.sourceUrl,
17
+ propType: PROP_TYPES.OBJECT,
18
+ },
19
+ },
20
+ };
@@ -0,0 +1,42 @@
1
+ import { COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, GROUPS, CONTAINER_COMPONENT_STYLES_SECTIONS, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Blur View",
4
+ tag: "BlurView",
5
+ description: "Expo Blur View",
6
+ doc_link: "https://docs.expo.io/versions/latest/sdk/blur-view/",
7
+ code_link: "https://github.com/expo/expo/blob/master/packages/expo/src/effects/BlurView.d.ts",
8
+ category: COMPONENT_TYPES.view,
9
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
10
+ layout: {
11
+ flexGrow: 1,
12
+ flexShrink: 1,
13
+ flexBasis: 0,
14
+ },
15
+ props: {
16
+ tint: {
17
+ label: "Tint",
18
+ description: "The tint of the blur view",
19
+ editable: true,
20
+ required: true,
21
+ defaultValue: "default",
22
+ formType: FORM_TYPES.flatArray,
23
+ propType: PROP_TYPES.STRING,
24
+ options: ["default", "light", "dark"],
25
+ group: GROUPS.basic,
26
+ },
27
+ intensity: {
28
+ label: "Intensity",
29
+ description: "A number from 1 to 100 that controls the intensity of the blur effect",
30
+ editable: true,
31
+ required: true,
32
+ defaultValue: 50,
33
+ formType: FORM_TYPES.number,
34
+ propType: PROP_TYPES.NUMBER,
35
+ min: 0,
36
+ max: 100,
37
+ step: 1,
38
+ precision: 0,
39
+ group: GROUPS.basic,
40
+ },
41
+ },
42
+ };
@@ -0,0 +1,87 @@
1
+ import { COMPONENT_TYPES, createIconProp, createTextProp, createDisabledProp, createLoadingProp, createActionProp, Triggers, StylesPanelSections, } from "@draftbit/types";
2
+ const SEED_DATA_TRIGGERS = [Triggers.OnPress];
3
+ const SEED_DATA_PROPS = {
4
+ onPress: createActionProp(),
5
+ icon: createIconProp({
6
+ defaultValue: null,
7
+ required: false,
8
+ }),
9
+ title: createTextProp({
10
+ label: "Label",
11
+ description: "Button Label",
12
+ defaultValue: "Get Started",
13
+ }),
14
+ disabled: createDisabledProp(),
15
+ loading: createLoadingProp(),
16
+ };
17
+ const LAYOUT = {
18
+ backgroundColor: "transparent",
19
+ borderRadius: 8,
20
+ fontFamily: "system-700",
21
+ };
22
+ export const SEED_DATA = [
23
+ {
24
+ name: "Button Outline",
25
+ tag: "ButtonOutline",
26
+ category: COMPONENT_TYPES.deprecated,
27
+ stylesPanelSections: [
28
+ StylesPanelSections.Typography,
29
+ StylesPanelSections.Background,
30
+ StylesPanelSections.Borders,
31
+ StylesPanelSections.Size,
32
+ StylesPanelSections.MarginsAndPaddings,
33
+ StylesPanelSections.Position,
34
+ StylesPanelSections.Effects,
35
+ ],
36
+ layout: {
37
+ ...LAYOUT,
38
+ backgroundColor: "transparent",
39
+ borderWidth: 1,
40
+ textAlign: "center",
41
+ },
42
+ triggers: SEED_DATA_TRIGGERS,
43
+ props: SEED_DATA_PROPS,
44
+ },
45
+ {
46
+ name: "Button Solid",
47
+ tag: "ButtonSolid",
48
+ category: COMPONENT_TYPES.deprecated,
49
+ stylesPanelSections: [
50
+ StylesPanelSections.Typography,
51
+ StylesPanelSections.Background,
52
+ StylesPanelSections.Borders,
53
+ StylesPanelSections.Size,
54
+ StylesPanelSections.MarginsAndPaddings,
55
+ StylesPanelSections.Position,
56
+ StylesPanelSections.Effects,
57
+ ],
58
+ layout: {
59
+ ...LAYOUT,
60
+ backgroundColor: "primary",
61
+ textAlign: "center",
62
+ },
63
+ triggers: SEED_DATA_TRIGGERS,
64
+ props: SEED_DATA_PROPS,
65
+ },
66
+ {
67
+ name: "Button",
68
+ tag: "Button",
69
+ category: COMPONENT_TYPES.button,
70
+ stylesPanelSections: [
71
+ StylesPanelSections.Typography,
72
+ StylesPanelSections.Background,
73
+ StylesPanelSections.Borders,
74
+ StylesPanelSections.Size,
75
+ StylesPanelSections.MarginsAndPaddings,
76
+ StylesPanelSections.Position,
77
+ StylesPanelSections.Effects,
78
+ ],
79
+ layout: {
80
+ ...LAYOUT,
81
+ backgroundColor: "primary",
82
+ textAlign: "center",
83
+ },
84
+ triggers: SEED_DATA_TRIGGERS,
85
+ props: SEED_DATA_PROPS,
86
+ },
87
+ ];
@@ -0,0 +1,46 @@
1
+ import { COMPONENT_TYPES, createBoolProp, createIconProp, createStaticNumberProp, createColorProp, createFieldNameProp, GROUPS, Triggers, BLOCK_STYLES_SECTIONS, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Checkbox",
4
+ tag: "Checkbox",
5
+ category: COMPONENT_TYPES.control,
6
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
7
+ triggers: [Triggers.OnPress, Triggers.OnCheck, Triggers.OnUncheck],
8
+ props: {
9
+ fieldName: createFieldNameProp({
10
+ defaultValue: "checkboxValue",
11
+ valuePropName: "status",
12
+ handlerPropName: "onPress",
13
+ }),
14
+ color: createColorProp({
15
+ group: GROUPS.basic,
16
+ label: "Color",
17
+ description: "Color for the button (used when the checkbox is checked)",
18
+ defaultValue: null,
19
+ }),
20
+ uncheckedColor: createColorProp({
21
+ group: GROUPS.basic,
22
+ label: "Unselected Color",
23
+ description: "Color for the button when the checkbox is unchecked",
24
+ defaultValue: null,
25
+ }),
26
+ disabled: createBoolProp({
27
+ label: "Disabled",
28
+ description: "Whether the checkbox is disabled",
29
+ }),
30
+ size: createStaticNumberProp({
31
+ label: "Size",
32
+ description: "Specifies the size of the icon",
33
+ defaultValue: null,
34
+ }),
35
+ checkedIcon: createIconProp({
36
+ label: "Checked Icon",
37
+ description: 'Icon to show when the checkbox status is "checked"',
38
+ defaultValue: null,
39
+ }),
40
+ uncheckedIcon: createIconProp({
41
+ label: "Unchecked Icon",
42
+ description: 'Icon to show when the checkbox status is "unchecked"',
43
+ defaultValue: null,
44
+ }),
45
+ },
46
+ };
@@ -0,0 +1,26 @@
1
+ import { GROUPS, COMPONENT_TYPES, FORM_TYPES, createTextProp, PROP_TYPES, createFieldNameProp, createDirectionProp, Triggers, StylesPanelSections, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Checkbox Group",
4
+ tag: "CheckboxGroup",
5
+ category: COMPONENT_TYPES.deprecated,
6
+ layout: {},
7
+ triggers: [Triggers.OnValueChange],
8
+ stylesPanelSections: [StylesPanelSections.Margins],
9
+ props: {
10
+ direction: createDirectionProp(),
11
+ values: createTextProp({
12
+ group: GROUPS.data,
13
+ formType: FORM_TYPES.flatArray,
14
+ propType: PROP_TYPES.ARRAY,
15
+ label: "Values",
16
+ description: "Currently selected values of the checkbox group",
17
+ required: true,
18
+ defaultValue: null,
19
+ }),
20
+ fieldName: createFieldNameProp({
21
+ defaultValue: "checkboxGroupValue",
22
+ handlerPropName: "onValueChange",
23
+ valuePropName: "value",
24
+ }),
25
+ },
26
+ };
@@ -0,0 +1,61 @@
1
+ import { createBoolProp, createTextProp, createTextStyle, createRowDirectionProp, createFieldNameProp, createIconProp, createStaticNumberProp, COMPONENT_TYPES, Triggers, createColorProp, StylesPanelSections, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Checkbox Row",
4
+ tag: "CheckboxRow",
5
+ category: COMPONENT_TYPES.control,
6
+ stylesPanelSections: [
7
+ StylesPanelSections.Typography,
8
+ StylesPanelSections.Margins,
9
+ StylesPanelSections.Effects,
10
+ ],
11
+ layout: {
12
+ minHeight: 50,
13
+ },
14
+ triggers: [Triggers.OnPress, Triggers.OnCheck, Triggers.OnUncheck],
15
+ props: {
16
+ fieldName: createFieldNameProp({
17
+ defaultValue: "checkboxRowValue",
18
+ valuePropName: "value",
19
+ handlerPropName: "onPress",
20
+ }),
21
+ label: createTextProp({
22
+ label: "Label",
23
+ description: "Label to show with the checkbox",
24
+ required: true,
25
+ defaultValue: "First Option",
26
+ }),
27
+ labelStyle: createTextStyle({
28
+ label: "Label Style",
29
+ description: "Change the styles of the label",
30
+ required: false,
31
+ editable: false,
32
+ }),
33
+ direction: createRowDirectionProp(),
34
+ color: createColorProp({
35
+ description: "Color for the button (used when the checkbox is checked)",
36
+ }),
37
+ uncheckedColor: createColorProp({
38
+ label: "Unselected Color",
39
+ description: "Color for the button when the checkbox is unchecked",
40
+ }),
41
+ disabled: createBoolProp({
42
+ label: "Disabled",
43
+ description: "Whether the checkbox is disabled",
44
+ }),
45
+ size: createStaticNumberProp({
46
+ label: "Size",
47
+ description: "Specifies the size of the icon",
48
+ defaultValue: null,
49
+ }),
50
+ checkedIcon: createIconProp({
51
+ label: "Checked Icon",
52
+ description: 'Icon to show when the checkbox status is "checked"',
53
+ defaultValue: null,
54
+ }),
55
+ uncheckedIcon: createIconProp({
56
+ label: "Unchecked Icon",
57
+ description: 'Icon to show when the checkbox status is "unchecked"',
58
+ defaultValue: null,
59
+ }),
60
+ },
61
+ };
@@ -0,0 +1,8 @@
1
+ import { COMPONENT_TYPES } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Custom Code",
4
+ tag: "CustomCode",
5
+ description: "A component that allows usage of custom code",
6
+ category: COMPONENT_TYPES.utility,
7
+ props: {},
8
+ };
@@ -0,0 +1,157 @@
1
+ import { COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, GROUPS, Triggers, } from "@draftbit/types";
2
+ const SEED_DATA_PROPS = {
3
+ label: {
4
+ label: "Label",
5
+ description: "The label to be displayed on the picker",
6
+ formType: FORM_TYPES.string,
7
+ propType: PROP_TYPES.STRING,
8
+ defaultValue: "Date",
9
+ editable: true,
10
+ required: true,
11
+ group: GROUPS.data,
12
+ },
13
+ mode: {
14
+ label: "Mode",
15
+ description: "Choose between date, time and datetime",
16
+ defaultValue: "date",
17
+ editable: true,
18
+ required: true,
19
+ formType: FORM_TYPES.flatArray,
20
+ propType: PROP_TYPES.STRING,
21
+ options: ["date", "time", "datetime"],
22
+ group: GROUPS.basic,
23
+ },
24
+ format: {
25
+ label: "Format",
26
+ description: "Create an output format for the date.",
27
+ editable: true,
28
+ required: false,
29
+ formType: FORM_TYPES.string,
30
+ propType: PROP_TYPES.STRING,
31
+ defaultValue: null,
32
+ group: GROUPS.basic,
33
+ },
34
+ assistiveText: {
35
+ label: "Assistive text",
36
+ description: "Helper text to display below the picker",
37
+ formType: FORM_TYPES.string,
38
+ propType: PROP_TYPES.STRING,
39
+ defaultValue: null,
40
+ editable: true,
41
+ required: false,
42
+ group: GROUPS.basic,
43
+ },
44
+ // locale: {
45
+ // label: "Locale",
46
+ // description: "Locale for the datepicker. Must be a valid Locale",
47
+ // formType: FORM_TYPES.string,
48
+ // propType: PROP_TYPES.STRING,
49
+ // defaultValue: null,
50
+ // editable: true,
51
+ // required: false,
52
+ // group: GROUPS.basic,
53
+ // },
54
+ // minuteInterval: {
55
+ // label: "Minute Interval",
56
+ // description: "The interval at which minutes can be selected",
57
+ // formType: FORM_TYPES.flatArray,
58
+ // propType: PROP_TYPES.NUMBER,
59
+ // options: [1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30],
60
+ // defaultValue: null,
61
+ // editable: true,
62
+ // required: false,
63
+ // group: GROUPS.basic,
64
+ // },
65
+ // timeZoneOffsetInMinutes: {
66
+ // label: "Time zone offset",
67
+ // description:
68
+ // "By default, the datepicker uses the device's timezone. This will allow you to offset it",
69
+ // formType: FORM_TYPES.number,
70
+ // propType: PROP_TYPES.NUMBER,
71
+ // defaultValue: null,
72
+ // editable: true,
73
+ // required: false,
74
+ // group: GROUPS.basic,
75
+ // },
76
+ disabled: {
77
+ label: "Disabled",
78
+ description: "Whether the picker should be disabled. Will prevent selection and show a greyed out state.",
79
+ formType: FORM_TYPES.boolean,
80
+ propType: PROP_TYPES.BOOLEAN,
81
+ defaultValue: false,
82
+ editable: true,
83
+ required: false,
84
+ group: GROUPS.basic,
85
+ },
86
+ // error: {
87
+ // label: "Error",
88
+ // description: "Whether the picker should display the error state",
89
+ // formType: FORM_TYPES.boolean,
90
+ // propType: PROP_TYPES.BOOLEAN,
91
+ // defaultValue: false,
92
+ // editable: true,
93
+ // required: false,
94
+ // group: GROUPS.data,
95
+ // },
96
+ leftIconName: {
97
+ label: "Left icon name",
98
+ description: "The icon to display on the left",
99
+ formType: FORM_TYPES.icon,
100
+ propType: PROP_TYPES.STRING,
101
+ defaultValue: null,
102
+ editable: true,
103
+ required: false,
104
+ group: GROUPS.basic,
105
+ },
106
+ leftIconMode: {
107
+ label: "Left icon mode",
108
+ description: "The mode of the icon to display on the left. 'inset' or 'outset'.",
109
+ formType: FORM_TYPES.flatArray,
110
+ propType: PROP_TYPES.STRING,
111
+ defaultValue: "inset",
112
+ options: ["inset", "outset"],
113
+ editable: true,
114
+ required: true,
115
+ group: GROUPS.basic,
116
+ },
117
+ rightIconName: {
118
+ label: "Right icon name",
119
+ description: "The icon to display on the right",
120
+ formType: FORM_TYPES.icon,
121
+ propType: PROP_TYPES.STRING,
122
+ defaultValue: null,
123
+ editable: true,
124
+ required: false,
125
+ group: GROUPS.basic,
126
+ },
127
+ fieldName: {
128
+ ...FIELD_NAME,
129
+ handlerPropName: "onDateChange",
130
+ valuePropName: "date",
131
+ defaultValue: "date",
132
+ },
133
+ };
134
+ export const SEED_DATA = [
135
+ {
136
+ name: "Date Picker",
137
+ tag: "DatePicker",
138
+ description: "A component used to select a date from a visual calendar",
139
+ category: COMPONENT_TYPES.input,
140
+ layout: null,
141
+ triggers: [Triggers.OnDateChange],
142
+ props: {
143
+ ...SEED_DATA_PROPS,
144
+ type: {
145
+ label: "Appearance",
146
+ description: "Type of Datepicker",
147
+ formType: FORM_TYPES.flatArray,
148
+ propType: PROP_TYPES.STRING,
149
+ defaultValue: "solid",
150
+ options: ["solid", "underline"],
151
+ editable: true,
152
+ required: true,
153
+ group: GROUPS.basic,
154
+ },
155
+ },
156
+ },
157
+ ];
@@ -0,0 +1,13 @@
1
+ import { COMPONENT_TYPES, StylesPanelSections } from "@draftbit/types";
2
+ /* TODO remove, still used inside the builder in a weird way */
3
+ export const SEED_DATA = {
4
+ name: "Fetch",
5
+ tag: "Fetch",
6
+ description: "Rest API Declarative Fetch component. Uses react-request internally",
7
+ category: COMPONENT_TYPES.data,
8
+ stylesPanelSections: [StylesPanelSections.NoStyles],
9
+ layout: {
10
+ minHeight: 40,
11
+ },
12
+ props: {},
13
+ };
@@ -0,0 +1,33 @@
1
+ import { COMPONENT_TYPES, createNumColumnsType, createStaticBoolProp, createNumberProp, CONTAINER_COMPONENT_STYLES_SECTIONS, GROUPS, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "FlashList",
4
+ tag: "FlashList",
5
+ description: "Flashlist by Shopify",
6
+ packageName: "@shopify/flash-list",
7
+ category: COMPONENT_TYPES.data,
8
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
9
+ layout: {
10
+ flex: 1,
11
+ },
12
+ props: {
13
+ estimatedItemSize: createNumberProp({
14
+ group: GROUPS.basic,
15
+ label: "Est. Item Size",
16
+ description: "Approximate size of the items before rendering.",
17
+ defaultValue: 50,
18
+ step: 1,
19
+ precision: 0,
20
+ }),
21
+ horizontal: createStaticBoolProp({
22
+ label: "Horizontal",
23
+ description: "Render list horizontally",
24
+ }),
25
+ inverted: createStaticBoolProp({
26
+ label: "Inverted",
27
+ description: "If true, reverses the direction.",
28
+ }),
29
+ numColumns: createNumColumnsType({
30
+ editable: true,
31
+ }),
32
+ },
33
+ };
@@ -0,0 +1,24 @@
1
+ import { COMPONENT_TYPES, createNumColumnsType, createStaticBoolProp, CONTAINER_COMPONENT_STYLES_SECTIONS, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "List",
4
+ tag: "FlatList",
5
+ description: "A basic List component",
6
+ category: COMPONENT_TYPES.data,
7
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
8
+ layout: {
9
+ flex: 1,
10
+ },
11
+ props: {
12
+ horizontal: createStaticBoolProp({
13
+ label: "Horizontal",
14
+ description: "Render list horizontally",
15
+ }),
16
+ inverted: createStaticBoolProp({
17
+ label: "Inverted",
18
+ description: "If true, reverses the direction.",
19
+ }),
20
+ numColumns: createNumColumnsType({
21
+ editable: true,
22
+ }),
23
+ },
24
+ };
@@ -0,0 +1,32 @@
1
+ import { COMPONENT_TYPES, GROUPS, createNumberProp, createColorProp, createIconProp, StylesPanelSections, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Icon",
4
+ tag: "Icon",
5
+ description: "An icon",
6
+ category: COMPONENT_TYPES.basic,
7
+ stylesPanelSections: [
8
+ StylesPanelSections.Size,
9
+ StylesPanelSections.Margins,
10
+ StylesPanelSections.Background,
11
+ StylesPanelSections.Position,
12
+ StylesPanelSections.Effects,
13
+ ],
14
+ layout: {},
15
+ props: {
16
+ name: {
17
+ ...createIconProp(),
18
+ group: GROUPS.data,
19
+ },
20
+ color: createColorProp(),
21
+ size: createNumberProp({
22
+ group: GROUPS.basic,
23
+ label: "Size",
24
+ description: "Width and height of your icon",
25
+ defaultValue: 24,
26
+ min: 1,
27
+ max: 128,
28
+ step: 1,
29
+ precision: 0,
30
+ }),
31
+ },
32
+ };
@@ -0,0 +1,35 @@
1
+ import { COMPONENT_TYPES, GROUPS, createIconProp, createColorProp, createNumberProp, createBoolProp, createActionProp, Triggers, StylesPanelSections, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Icon Button",
4
+ tag: "IconButton",
5
+ category: COMPONENT_TYPES.button,
6
+ layout: {},
7
+ triggers: [Triggers.OnPress],
8
+ stylesPanelSections: [
9
+ StylesPanelSections.Margins,
10
+ StylesPanelSections.Effects,
11
+ StylesPanelSections.Position,
12
+ ],
13
+ props: {
14
+ onPress: createActionProp(),
15
+ icon: createIconProp(),
16
+ color: createColorProp({
17
+ label: "Color",
18
+ group: GROUPS.basic,
19
+ }),
20
+ disabled: createBoolProp({
21
+ label: "Disabled",
22
+ group: GROUPS.basic,
23
+ }),
24
+ size: createNumberProp({
25
+ group: GROUPS.basic,
26
+ label: "Size",
27
+ description: "Width and height of your icon",
28
+ defaultValue: 32,
29
+ min: 16,
30
+ max: 128,
31
+ step: 1,
32
+ precision: 0,
33
+ }),
34
+ },
35
+ };