@draftbit/core 47.0.1-5c6c55.2 → 47.0.1-9e8c6d.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 (99) hide show
  1. package/lib/commonjs/components/Button.js +3 -3
  2. package/lib/commonjs/components/Checkbox/Checkbox.js +1 -3
  3. package/lib/commonjs/components/Checkbox/CheckboxGroupRow.js +1 -2
  4. package/lib/commonjs/components/Checkbox/CheckboxRow.js +1 -2
  5. package/lib/commonjs/components/DeprecatedButton.js +3 -27
  6. package/lib/commonjs/components/DeprecatedFAB.js +1 -2
  7. package/lib/commonjs/components/Layout.js +40 -19
  8. package/lib/commonjs/components/Portal/PortalConsumer.js +22 -7
  9. package/lib/commonjs/components/Pressable.js +37 -0
  10. package/lib/commonjs/components/ProgressBar.js +37 -7
  11. package/lib/commonjs/components/Swiper/Swiper.js +2 -0
  12. package/lib/commonjs/components/Touchable.js +8 -3
  13. package/lib/commonjs/constants.js +1 -1
  14. package/lib/commonjs/index.js +7 -0
  15. package/lib/commonjs/mappings/Button.js +39 -10
  16. package/lib/commonjs/mappings/FlashList.js +45 -2
  17. package/lib/commonjs/mappings/FlatList.js +12 -0
  18. package/lib/commonjs/mappings/Swiper.js +2 -0
  19. package/lib/commonjs/mappings/Touchable.js +47 -7
  20. package/lib/module/components/Button.js +3 -3
  21. package/lib/module/components/Checkbox/Checkbox.js +2 -3
  22. package/lib/module/components/Checkbox/CheckboxGroupRow.js +2 -3
  23. package/lib/module/components/Checkbox/CheckboxRow.js +2 -3
  24. package/lib/module/components/DeprecatedButton.js +4 -28
  25. package/lib/module/components/DeprecatedFAB.js +2 -3
  26. package/lib/module/components/Pressable.js +30 -0
  27. package/lib/module/components/Swiper/Swiper.js +2 -0
  28. package/lib/module/components/Touchable.js +8 -3
  29. package/lib/module/constants.js +1 -0
  30. package/lib/module/index.js +1 -0
  31. package/lib/module/mappings/Button.js +40 -11
  32. package/lib/module/mappings/FlashList.js +46 -3
  33. package/lib/module/mappings/FlatList.js +13 -1
  34. package/lib/module/mappings/Swiper.js +3 -1
  35. package/lib/module/mappings/Touchable.js +49 -9
  36. package/lib/typescript/src/components/Button.d.ts.map +1 -1
  37. package/lib/typescript/src/components/Checkbox/Checkbox.d.ts +2 -2
  38. package/lib/typescript/src/components/Checkbox/Checkbox.d.ts.map +1 -1
  39. package/lib/typescript/src/components/Checkbox/CheckboxGroupRow.d.ts.map +1 -1
  40. package/lib/typescript/src/components/Checkbox/CheckboxRow.d.ts.map +1 -1
  41. package/lib/typescript/src/components/DeprecatedButton.d.ts +2 -2
  42. package/lib/typescript/src/components/DeprecatedButton.d.ts.map +1 -1
  43. package/lib/typescript/src/components/DeprecatedFAB.d.ts +2 -2
  44. package/lib/typescript/src/components/DeprecatedFAB.d.ts.map +1 -1
  45. package/lib/typescript/src/components/Pressable.d.ts +10 -0
  46. package/lib/typescript/src/components/Pressable.d.ts.map +1 -0
  47. package/lib/typescript/src/components/Swiper/Swiper.d.ts +2 -1
  48. package/lib/typescript/src/components/Swiper/Swiper.d.ts.map +1 -1
  49. package/lib/typescript/src/components/Touchable.d.ts +5 -6
  50. package/lib/typescript/src/components/Touchable.d.ts.map +1 -1
  51. package/lib/typescript/src/index.d.ts +1 -0
  52. package/lib/typescript/src/index.d.ts.map +1 -1
  53. package/lib/typescript/src/mappings/Button.d.ts +113 -4
  54. package/lib/typescript/src/mappings/Button.d.ts.map +1 -1
  55. package/lib/typescript/src/mappings/FlashList.d.ts +112 -2
  56. package/lib/typescript/src/mappings/FlashList.d.ts.map +1 -1
  57. package/lib/typescript/src/mappings/FlatList.d.ts +42 -0
  58. package/lib/typescript/src/mappings/FlatList.d.ts.map +1 -1
  59. package/lib/typescript/src/mappings/Swiper.d.ts +11 -0
  60. package/lib/typescript/src/mappings/Swiper.d.ts.map +1 -1
  61. package/lib/typescript/src/mappings/Touchable.d.ts +59 -5
  62. package/lib/typescript/src/mappings/Touchable.d.ts.map +1 -1
  63. package/package.json +3 -3
  64. package/src/components/Button.js +3 -3
  65. package/src/components/Button.tsx +14 -4
  66. package/src/components/Checkbox/Checkbox.js +2 -3
  67. package/src/components/Checkbox/Checkbox.tsx +5 -7
  68. package/src/components/Checkbox/CheckboxGroupRow.js +2 -3
  69. package/src/components/Checkbox/CheckboxGroupRow.tsx +3 -3
  70. package/src/components/Checkbox/CheckboxRow.js +2 -3
  71. package/src/components/Checkbox/CheckboxRow.tsx +3 -3
  72. package/src/components/DeprecatedButton.js +4 -16
  73. package/src/components/DeprecatedButton.tsx +7 -31
  74. package/src/components/DeprecatedFAB.js +2 -3
  75. package/src/components/DeprecatedFAB.tsx +5 -5
  76. package/src/components/Pressable.js +12 -0
  77. package/src/components/Pressable.tsx +44 -0
  78. package/src/components/Swiper/Swiper.js +2 -2
  79. package/src/components/Swiper/Swiper.tsx +3 -0
  80. package/src/components/Touchable.js +3 -3
  81. package/src/components/Touchable.tsx +11 -7
  82. package/src/index.js +1 -0
  83. package/src/index.tsx +1 -0
  84. package/src/mappings/Button.js +39 -10
  85. package/src/mappings/Button.ts +41 -10
  86. package/src/mappings/FlashList.js +77 -31
  87. package/src/mappings/FlashList.ts +82 -30
  88. package/src/mappings/FlatList.js +13 -1
  89. package/src/mappings/FlatList.ts +16 -0
  90. package/src/mappings/Swiper.js +3 -1
  91. package/src/mappings/Swiper.ts +4 -0
  92. package/src/mappings/Touchable.js +50 -7
  93. package/src/mappings/Touchable.ts +53 -6
  94. package/lib/commonjs/mappings/DatePickerModal.js +0 -75
  95. package/lib/module/mappings/DatePickerModal.js +0 -66
  96. package/lib/typescript/src/mappings/DatePickerModal.d.ts +0 -155
  97. package/lib/typescript/src/mappings/DatePickerModal.d.ts.map +0 -1
  98. package/src/mappings/DatePickerModal.js +0 -74
  99. package/src/mappings/DatePickerModal.ts +0 -92
@@ -1,29 +1,33 @@
1
1
  import React from "react";
2
- import { Pressable, ViewStyle, PressableProps } from "react-native";
2
+ import { Pressable, PressableProps, ViewStyle } from "react-native";
3
3
 
4
4
  type Props = {
5
- disabled?: boolean;
6
- children: React.ReactNode;
7
5
  style?: ViewStyle;
8
- onPress?: () => void;
6
+ activeOpacity?: number;
7
+ disabledOpacity?: number;
9
8
  } & PressableProps;
10
9
 
11
10
  export default function Touchable({
12
11
  children,
13
12
  disabled,
14
13
  onPress,
14
+ activeOpacity,
15
+ disabledOpacity,
16
+ delayLongPress,
17
+ hitSlop,
15
18
  style,
16
19
  ...props
17
20
  }: Props) {
18
21
  return (
19
22
  <Pressable
20
- onPress={onPress}
21
23
  disabled={disabled}
22
- hitSlop={8}
24
+ onPress={onPress}
25
+ delayLongPress={delayLongPress ? delayLongPress : 500}
26
+ hitSlop={hitSlop ? hitSlop : 8}
23
27
  style={({ pressed }) => {
24
28
  return [
25
29
  {
26
- opacity: pressed || disabled ? 0.75 : 1,
30
+ opacity: pressed ? activeOpacity : disabled ? disabledOpacity : 1,
27
31
  },
28
32
  style,
29
33
  ];
package/src/index.js CHANGED
@@ -26,6 +26,7 @@ export { default as Switch, SwitchRow } from "./components/Switch";
26
26
  export { default as TextField } from "./components/TextField";
27
27
  export { default as ToggleButton } from "./components/ToggleButton";
28
28
  export { default as Touchable } from "./components/Touchable";
29
+ export { default as Pressable } from "./components/Pressable";
29
30
  export { AccordionGroup, AccordionItem } from "./components/Accordion";
30
31
  export { ActionSheet, ActionSheetItem, ActionSheetCancel, } from "./components/ActionSheet";
31
32
  export { Swiper, SwiperItem } from "./components/Swiper";
package/src/index.tsx CHANGED
@@ -27,6 +27,7 @@ export { default as Switch, SwitchRow } from "./components/Switch";
27
27
  export { default as TextField } from "./components/TextField";
28
28
  export { default as ToggleButton } from "./components/ToggleButton";
29
29
  export { default as Touchable } from "./components/Touchable";
30
+ export { default as Pressable } from "./components/Pressable";
30
31
  export { AccordionGroup, AccordionItem } from "./components/Accordion";
31
32
  export {
32
33
  ActionSheet,
@@ -1,7 +1,8 @@
1
- import { COMPONENT_TYPES, createIconProp, createTextProp, createDisabledProp, createLoadingProp, createActionProp, Triggers, StylesPanelSections, } from "@draftbit/types";
2
- const SEED_DATA_TRIGGERS = [Triggers.OnPress];
1
+ import { COMPONENT_TYPES, createIconProp, createTextProp, createDisabledProp, createLoadingProp, createActionProp, Triggers, StylesPanelSections, createStaticNumberProp, } from "@draftbit/types";
2
+ const SEED_DATA_TRIGGERS = [Triggers.OnPress, Triggers.OnLongPress];
3
3
  const SEED_DATA_PROPS = {
4
4
  onPress: createActionProp(),
5
+ onLongPress: createActionProp(),
5
6
  icon: createIconProp({
6
7
  defaultValue: null,
7
8
  required: false,
@@ -13,11 +14,36 @@ const SEED_DATA_PROPS = {
13
14
  }),
14
15
  disabled: createDisabledProp(),
15
16
  loading: createLoadingProp(),
16
- };
17
- const LAYOUT = {
18
- backgroundColor: "transparent",
19
- borderRadius: 8,
20
- fontFamily: "system-700",
17
+ activeOpacity: createStaticNumberProp({
18
+ label: "Active Opacity",
19
+ description: "Opacity of the button when active.",
20
+ defaultValue: 0.8,
21
+ min: 0,
22
+ max: 1,
23
+ step: 0.01,
24
+ precision: 2,
25
+ required: false,
26
+ }),
27
+ disabledOpacity: createStaticNumberProp({
28
+ label: "Disabled Opacity",
29
+ description: "Opacity of the button when disabled.",
30
+ defaultValue: 0.8,
31
+ min: 0,
32
+ max: 1,
33
+ step: 0.01,
34
+ precision: 2,
35
+ required: false,
36
+ }),
37
+ delayLongPress: createStaticNumberProp({
38
+ label: "Delay Long Press",
39
+ description: "Duration (in milliseconds) from onPressIn before onLongPress is called.",
40
+ required: false,
41
+ }),
42
+ hitSlop: createStaticNumberProp({
43
+ label: "Hit Slop",
44
+ description: "Sets additional distance outside of element in which a press can be detected",
45
+ required: false,
46
+ }),
21
47
  };
22
48
  export const SEED_DATA = [
23
49
  {
@@ -34,7 +60,8 @@ export const SEED_DATA = [
34
60
  StylesPanelSections.Effects,
35
61
  ],
36
62
  layout: {
37
- ...LAYOUT,
63
+ borderRadius: 8,
64
+ fontFamily: "system-700",
38
65
  backgroundColor: "transparent",
39
66
  borderWidth: 1,
40
67
  textAlign: "center",
@@ -56,7 +83,8 @@ export const SEED_DATA = [
56
83
  StylesPanelSections.Effects,
57
84
  ],
58
85
  layout: {
59
- ...LAYOUT,
86
+ borderRadius: 8,
87
+ fontFamily: "system-700",
60
88
  backgroundColor: "primary",
61
89
  textAlign: "center",
62
90
  },
@@ -77,7 +105,8 @@ export const SEED_DATA = [
77
105
  StylesPanelSections.Effects,
78
106
  ],
79
107
  layout: {
80
- ...LAYOUT,
108
+ borderRadius: 8,
109
+ fontFamily: "system-700",
81
110
  backgroundColor: "primary",
82
111
  textAlign: "center",
83
112
  },
@@ -7,11 +7,13 @@ import {
7
7
  createActionProp,
8
8
  Triggers,
9
9
  StylesPanelSections,
10
+ createStaticNumberProp,
10
11
  } from "@draftbit/types";
11
12
 
12
- const SEED_DATA_TRIGGERS = [Triggers.OnPress];
13
+ const SEED_DATA_TRIGGERS = [Triggers.OnPress, Triggers.OnLongPress];
13
14
  const SEED_DATA_PROPS = {
14
15
  onPress: createActionProp(),
16
+ onLongPress: createActionProp(),
15
17
  icon: createIconProp({
16
18
  defaultValue: null,
17
19
  required: false,
@@ -23,12 +25,38 @@ const SEED_DATA_PROPS = {
23
25
  }),
24
26
  disabled: createDisabledProp(),
25
27
  loading: createLoadingProp(),
26
- };
27
-
28
- const LAYOUT = {
29
- backgroundColor: "transparent",
30
- borderRadius: 8,
31
- fontFamily: "system-700",
28
+ activeOpacity: createStaticNumberProp({
29
+ label: "Active Opacity",
30
+ description: "Opacity of the button when active.",
31
+ defaultValue: 0.8,
32
+ min: 0,
33
+ max: 1,
34
+ step: 0.01,
35
+ precision: 2,
36
+ required: false,
37
+ }),
38
+ disabledOpacity: createStaticNumberProp({
39
+ label: "Disabled Opacity",
40
+ description: "Opacity of the button when disabled.",
41
+ defaultValue: 0.8,
42
+ min: 0,
43
+ max: 1,
44
+ step: 0.01,
45
+ precision: 2,
46
+ required: false,
47
+ }),
48
+ delayLongPress: createStaticNumberProp({
49
+ label: "Delay Long Press",
50
+ description:
51
+ "Duration (in milliseconds) from onPressIn before onLongPress is called.",
52
+ required: false,
53
+ }),
54
+ hitSlop: createStaticNumberProp({
55
+ label: "Hit Slop",
56
+ description:
57
+ "Sets additional distance outside of element in which a press can be detected",
58
+ required: false,
59
+ }),
32
60
  };
33
61
 
34
62
  export const SEED_DATA = [
@@ -46,7 +74,8 @@ export const SEED_DATA = [
46
74
  StylesPanelSections.Effects,
47
75
  ],
48
76
  layout: {
49
- ...LAYOUT,
77
+ borderRadius: 8,
78
+ fontFamily: "system-700",
50
79
  backgroundColor: "transparent",
51
80
  borderWidth: 1,
52
81
  textAlign: "center",
@@ -68,7 +97,8 @@ export const SEED_DATA = [
68
97
  StylesPanelSections.Effects,
69
98
  ],
70
99
  layout: {
71
- ...LAYOUT,
100
+ borderRadius: 8,
101
+ fontFamily: "system-700",
72
102
  backgroundColor: "primary",
73
103
  textAlign: "center",
74
104
  },
@@ -89,7 +119,8 @@ export const SEED_DATA = [
89
119
  StylesPanelSections.Effects,
90
120
  ],
91
121
  layout: {
92
- ...LAYOUT,
122
+ borderRadius: 8,
123
+ fontFamily: "system-700",
93
124
  backgroundColor: "primary",
94
125
  textAlign: "center",
95
126
  },
@@ -1,33 +1,79 @@
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,
1
+ import { COMPONENT_TYPES, createNumColumnsType, createStaticBoolProp, createNumberProp, CONTAINER_COMPONENT_STYLES_SECTIONS, GROUPS, Triggers, createActionProp, createStaticNumberProp, } from "@draftbit/types";
2
+ export const SEED_DATA = [
3
+ {
4
+ name: "Masonry List",
5
+ tag: "MasonryFlashList",
6
+ description: "Masonry Flashlist by Shopify",
7
+ packageName: "@shopify/flash-list",
8
+ category: COMPONENT_TYPES.data,
9
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
10
+ layout: {
11
+ flex: 1,
12
+ },
13
+ triggers: [Triggers.OnRefresh, Triggers.OnEndReached],
14
+ props: {
15
+ onRefresh: createActionProp(),
16
+ onEndReached: createActionProp(),
17
+ numColumns: createNumColumnsType({
18
+ editable: true,
19
+ }),
20
+ estimatedItemSize: createNumberProp({
21
+ group: GROUPS.basic,
22
+ label: "Est. Item Size",
23
+ description: "Approximate size of the items before rendering.",
24
+ defaultValue: 50,
25
+ step: 1,
26
+ precision: 0,
27
+ }),
28
+ optimizeItemArrangement: createStaticBoolProp({
29
+ label: "Optimize Item Arrangement",
30
+ description: "If enabled, MasonryFlashList will try to reduce difference in column height by modifying item order. If true, specifying overrideItemLayout is required. Default value is false.",
31
+ }),
32
+ onEndReachedThreshold: createStaticNumberProp({
33
+ label: "End Reached Threshold",
34
+ description: "How far from the end (in units of visible length of the list) the bottom edge of the list must be from the end of the content to trigger the onEndReached callback. Thus a value of 0.5 will trigger onEndReached when the end of the content is within half the visible length of the list.",
35
+ defaultValue: 0.5,
36
+ }),
37
+ },
11
38
  },
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
- }),
39
+ {
40
+ name: "FlashList",
41
+ tag: "FlashList",
42
+ description: "Flashlist by Shopify",
43
+ packageName: "@shopify/flash-list",
44
+ category: COMPONENT_TYPES.data,
45
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
46
+ layout: {
47
+ flex: 1,
48
+ },
49
+ triggers: [Triggers.OnRefresh, Triggers.OnEndReached],
50
+ props: {
51
+ onRefresh: createActionProp(),
52
+ onEndReached: createActionProp(),
53
+ estimatedItemSize: createNumberProp({
54
+ group: GROUPS.basic,
55
+ label: "Est. Item Size",
56
+ description: "Approximate size of the items before rendering.",
57
+ defaultValue: 50,
58
+ step: 1,
59
+ precision: 0,
60
+ }),
61
+ horizontal: createStaticBoolProp({
62
+ label: "Horizontal",
63
+ description: "Render list horizontally",
64
+ }),
65
+ inverted: createStaticBoolProp({
66
+ label: "Inverted",
67
+ description: "If true, reverses the direction.",
68
+ }),
69
+ numColumns: createNumColumnsType({
70
+ editable: true,
71
+ }),
72
+ onEndReachedThreshold: createStaticNumberProp({
73
+ label: "End Reached Threshold",
74
+ description: "How far from the end (in units of visible length of the list) the bottom edge of the list must be from the end of the content to trigger the onEndReached callback. Thus a value of 0.5 will trigger onEndReached when the end of the content is within half the visible length of the list.",
75
+ defaultValue: 0.5,
76
+ }),
77
+ },
32
78
  },
33
- };
79
+ ];
@@ -5,37 +5,89 @@ import {
5
5
  createNumberProp,
6
6
  CONTAINER_COMPONENT_STYLES_SECTIONS,
7
7
  GROUPS,
8
+ Triggers,
9
+ createActionProp,
10
+ createStaticNumberProp,
8
11
  } from "@draftbit/types";
9
12
 
10
- export const SEED_DATA = {
11
- name: "FlashList",
12
- tag: "FlashList",
13
- description: "Flashlist by Shopify",
14
- packageName: "@shopify/flash-list",
15
- category: COMPONENT_TYPES.data,
16
- stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
17
- layout: {
18
- flex: 1,
13
+ export const SEED_DATA = [
14
+ {
15
+ name: "Masonry List",
16
+ tag: "MasonryFlashList",
17
+ description: "Masonry Flashlist by Shopify",
18
+ packageName: "@shopify/flash-list",
19
+ category: COMPONENT_TYPES.data,
20
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
21
+ layout: {
22
+ flex: 1,
23
+ },
24
+ triggers: [Triggers.OnRefresh, Triggers.OnEndReached],
25
+ props: {
26
+ onRefresh: createActionProp(),
27
+ onEndReached: createActionProp(),
28
+ numColumns: createNumColumnsType({
29
+ editable: true,
30
+ }),
31
+ estimatedItemSize: createNumberProp({
32
+ group: GROUPS.basic,
33
+ label: "Est. Item Size",
34
+ description: "Approximate size of the items before rendering.",
35
+ defaultValue: 50,
36
+ step: 1,
37
+ precision: 0,
38
+ }),
39
+ optimizeItemArrangement: createStaticBoolProp({
40
+ label: "Optimize Item Arrangement",
41
+ description:
42
+ "If enabled, MasonryFlashList will try to reduce difference in column height by modifying item order. If true, specifying overrideItemLayout is required. Default value is false.",
43
+ }),
44
+ onEndReachedThreshold: createStaticNumberProp({
45
+ label: "End Reached Threshold",
46
+ description:
47
+ "How far from the end (in units of visible length of the list) the bottom edge of the list must be from the end of the content to trigger the onEndReached callback. Thus a value of 0.5 will trigger onEndReached when the end of the content is within half the visible length of the list.",
48
+ defaultValue: 0.5,
49
+ }),
50
+ },
19
51
  },
20
- props: {
21
- estimatedItemSize: createNumberProp({
22
- group: GROUPS.basic,
23
- label: "Est. Item Size",
24
- description: "Approximate size of the items before rendering.",
25
- defaultValue: 50,
26
- step: 1,
27
- precision: 0,
28
- }),
29
- horizontal: createStaticBoolProp({
30
- label: "Horizontal",
31
- description: "Render list horizontally",
32
- }),
33
- inverted: createStaticBoolProp({
34
- label: "Inverted",
35
- description: "If true, reverses the direction.",
36
- }),
37
- numColumns: createNumColumnsType({
38
- editable: true,
39
- }),
52
+ {
53
+ name: "FlashList",
54
+ tag: "FlashList",
55
+ description: "Flashlist by Shopify",
56
+ packageName: "@shopify/flash-list",
57
+ category: COMPONENT_TYPES.data,
58
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
59
+ layout: {
60
+ flex: 1,
61
+ },
62
+ triggers: [Triggers.OnRefresh, Triggers.OnEndReached],
63
+ props: {
64
+ onRefresh: createActionProp(),
65
+ onEndReached: createActionProp(),
66
+ estimatedItemSize: createNumberProp({
67
+ group: GROUPS.basic,
68
+ label: "Est. Item Size",
69
+ description: "Approximate size of the items before rendering.",
70
+ defaultValue: 50,
71
+ step: 1,
72
+ precision: 0,
73
+ }),
74
+ horizontal: createStaticBoolProp({
75
+ label: "Horizontal",
76
+ description: "Render list horizontally",
77
+ }),
78
+ inverted: createStaticBoolProp({
79
+ label: "Inverted",
80
+ description: "If true, reverses the direction.",
81
+ }),
82
+ numColumns: createNumColumnsType({
83
+ editable: true,
84
+ }),
85
+ onEndReachedThreshold: createStaticNumberProp({
86
+ label: "End Reached Threshold",
87
+ description:
88
+ "How far from the end (in units of visible length of the list) the bottom edge of the list must be from the end of the content to trigger the onEndReached callback. Thus a value of 0.5 will trigger onEndReached when the end of the content is within half the visible length of the list.",
89
+ defaultValue: 0.5,
90
+ }),
91
+ },
40
92
  },
41
- };
93
+ ];
@@ -1,4 +1,4 @@
1
- import { COMPONENT_TYPES, createNumColumnsType, createStaticBoolProp, CONTAINER_COMPONENT_STYLES_SECTIONS, } from "@draftbit/types";
1
+ import { COMPONENT_TYPES, createNumColumnsType, createStaticBoolProp, CONTAINER_COMPONENT_STYLES_SECTIONS, Triggers, createActionProp, createStaticNumberProp, } from "@draftbit/types";
2
2
  export const SEED_DATA = {
3
3
  name: "List",
4
4
  tag: "FlatList",
@@ -8,7 +8,10 @@ export const SEED_DATA = {
8
8
  layout: {
9
9
  flex: 1,
10
10
  },
11
+ triggers: [Triggers.OnRefresh, Triggers.OnEndReached],
11
12
  props: {
13
+ onRefresh: createActionProp(),
14
+ onEndReached: createActionProp(),
12
15
  horizontal: createStaticBoolProp({
13
16
  label: "Horizontal",
14
17
  description: "Render list horizontally",
@@ -20,5 +23,14 @@ export const SEED_DATA = {
20
23
  numColumns: createNumColumnsType({
21
24
  editable: true,
22
25
  }),
26
+ initialNumToRender: createStaticBoolProp({
27
+ label: "Initial Num To Render",
28
+ descriprion: "How many items to render in the initial batch",
29
+ }),
30
+ onEndReachedThreshold: createStaticNumberProp({
31
+ label: "End Reached Threshold",
32
+ description: "How far from the end (in units of visible length of the list) the bottom edge of the list must be from the end of the content to trigger the onEndReached callback. Thus a value of 0.5 will trigger onEndReached when the end of the content is within half the visible length of the list.",
33
+ defaultValue: 0.5,
34
+ }),
23
35
  },
24
36
  };
@@ -3,6 +3,9 @@ import {
3
3
  createNumColumnsType,
4
4
  createStaticBoolProp,
5
5
  CONTAINER_COMPONENT_STYLES_SECTIONS,
6
+ Triggers,
7
+ createActionProp,
8
+ createStaticNumberProp,
6
9
  } from "@draftbit/types";
7
10
 
8
11
  export const SEED_DATA = {
@@ -14,7 +17,10 @@ export const SEED_DATA = {
14
17
  layout: {
15
18
  flex: 1,
16
19
  },
20
+ triggers: [Triggers.OnRefresh, Triggers.OnEndReached],
17
21
  props: {
22
+ onRefresh: createActionProp(),
23
+ onEndReached: createActionProp(),
18
24
  horizontal: createStaticBoolProp({
19
25
  label: "Horizontal",
20
26
  description: "Render list horizontally",
@@ -26,5 +32,15 @@ export const SEED_DATA = {
26
32
  numColumns: createNumColumnsType({
27
33
  editable: true,
28
34
  }),
35
+ initialNumToRender: createStaticBoolProp({
36
+ label: "Initial Num To Render",
37
+ descriprion: "How many items to render in the initial batch",
38
+ }),
39
+ onEndReachedThreshold: createStaticNumberProp({
40
+ label: "End Reached Threshold",
41
+ description:
42
+ "How far from the end (in units of visible length of the list) the bottom edge of the list must be from the end of the content to trigger the onEndReached callback. Thus a value of 0.5 will trigger onEndReached when the end of the content is within half the visible length of the list.",
43
+ defaultValue: 0.5,
44
+ }),
29
45
  },
30
46
  };
@@ -1,4 +1,4 @@
1
- import { COMPONENT_TYPES, createBoolProp, createNumberProp, createTextProp, createColorProp, GROUPS, } from "@draftbit/types";
1
+ import { COMPONENT_TYPES, createBoolProp, createNumberProp, createTextProp, createColorProp, GROUPS, Triggers, createActionProp, } from "@draftbit/types";
2
2
  export const SEED_DATA = {
3
3
  name: "Swiper",
4
4
  tag: "Swiper",
@@ -8,7 +8,9 @@ export const SEED_DATA = {
8
8
  height: 300,
9
9
  width: "100%",
10
10
  },
11
+ triggers: [Triggers.OnIndexChanged],
11
12
  props: {
13
+ onIndexChanged: createActionProp(),
12
14
  from: createNumberProp({
13
15
  group: GROUPS.basic,
14
16
  label: "Initial Slide",
@@ -5,6 +5,8 @@ import {
5
5
  createTextProp,
6
6
  createColorProp,
7
7
  GROUPS,
8
+ Triggers,
9
+ createActionProp,
8
10
  } from "@draftbit/types";
9
11
 
10
12
  export const SEED_DATA = {
@@ -16,7 +18,9 @@ export const SEED_DATA = {
16
18
  height: 300,
17
19
  width: "100%",
18
20
  },
21
+ triggers: [Triggers.OnIndexChanged],
19
22
  props: {
23
+ onIndexChanged: createActionProp(),
20
24
  from: createNumberProp({
21
25
  group: GROUPS.basic,
22
26
  label: "Initial Slide",
@@ -1,17 +1,60 @@
1
- import { COMPONENT_TYPES, createActionProp, Triggers, StylesPanelSections, } from "@draftbit/types";
2
- export const SEED_DATA = {
3
- name: "Touchable",
4
- tag: "Touchable",
5
- description: "Simple button with no styles",
6
- category: COMPONENT_TYPES.button,
1
+ import { COMPONENT_TYPES, createActionProp, Triggers, createStaticNumberProp, StylesPanelSections, } from "@draftbit/types";
2
+ const SEED_DATA_PROPS = {
7
3
  stylesPanelSections: [
8
4
  StylesPanelSections.Size,
9
5
  StylesPanelSections.Margins,
10
6
  StylesPanelSections.Borders,
11
7
  ],
12
8
  layout: {},
13
- triggers: [Triggers.OnPress],
9
+ triggers: [Triggers.OnPress, Triggers.OnLongPress],
14
10
  props: {
15
11
  onPress: createActionProp(),
12
+ onLongPress: createActionProp(),
13
+ activeOpacity: createStaticNumberProp({
14
+ label: "Active Opacity",
15
+ description: "The opacity when the button is pressed.",
16
+ defaultValue: 0.8,
17
+ min: 0,
18
+ max: 1,
19
+ step: 0.01,
20
+ precision: 2,
21
+ required: false,
22
+ }),
23
+ disabledOpacity: createStaticNumberProp({
24
+ label: "Disabled Opacity",
25
+ description: "The opacity when the button is disabled.",
26
+ defaultValue: 0.8,
27
+ min: 0,
28
+ max: 1,
29
+ step: 0.01,
30
+ precision: 2,
31
+ required: false,
32
+ }),
33
+ delayLongPress: createStaticNumberProp({
34
+ label: "Delay Long Press",
35
+ description: "Duration (in milliseconds) from onPressIn before onLongPress is called.",
36
+ required: false,
37
+ }),
38
+ hitSlop: createStaticNumberProp({
39
+ label: "Hit Slop",
40
+ description: "Sets additional distance outside of element in which a press can be detected.",
41
+ required: false,
42
+ }),
16
43
  },
17
44
  };
45
+ export const SEED_DATA = [
46
+ {
47
+ name: "Touchable",
48
+ tag: "Touchable",
49
+ description: "An interactive view with no styles",
50
+ category: COMPONENT_TYPES.button,
51
+ ...SEED_DATA_PROPS,
52
+ },
53
+ {
54
+ name: "Pressable",
55
+ tag: "Pressable",
56
+ description: "An interactive view with no styles",
57
+ category: COMPONENT_TYPES.button,
58
+ ...SEED_DATA_PROPS,
59
+ },
60
+ ];