@draftbit/core 46.7.9-157e2b.2 → 46.7.9-193328.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 (79) hide show
  1. package/lib/commonjs/components/DatePicker/DatePicker.js +14 -1
  2. package/lib/commonjs/components/DeckSwiper/DeckSwiper.js +74 -0
  3. package/lib/commonjs/components/DeckSwiper/DeckSwiperCard.js +34 -0
  4. package/lib/commonjs/components/DeckSwiper/index.js +20 -0
  5. package/lib/commonjs/components/DeprecatedFAB.js +3 -21
  6. package/lib/commonjs/components/NumberInput.js +10 -10
  7. package/lib/commonjs/components/Picker/Picker.js +10 -3
  8. package/lib/commonjs/index.js +13 -0
  9. package/lib/commonjs/mappings/DatePicker.js +8 -2
  10. package/lib/commonjs/mappings/DeckSwiper.js +55 -0
  11. package/lib/commonjs/mappings/DeckSwiperCard.js +23 -0
  12. package/lib/commonjs/mappings/HtmlElements.js +177 -0
  13. package/lib/commonjs/mappings/Picker.js +5 -0
  14. package/lib/module/components/CircleImage.js +1 -16
  15. package/lib/module/components/DatePicker/DatePicker.js +15 -2
  16. package/lib/module/components/DeckSwiper/DeckSwiper.js +66 -0
  17. package/lib/module/components/DeckSwiper/DeckSwiperCard.js +26 -0
  18. package/lib/module/components/DeckSwiper/index.js +2 -0
  19. package/lib/module/components/NumberInput.js +10 -10
  20. package/lib/module/components/Picker/Picker.js +11 -4
  21. package/lib/module/index.js +1 -0
  22. package/lib/module/mappings/DatePicker.js +9 -3
  23. package/lib/module/mappings/DeckSwiper.js +48 -0
  24. package/lib/module/mappings/DeckSwiperCard.js +16 -0
  25. package/lib/module/mappings/HtmlElements.js +170 -0
  26. package/lib/module/mappings/Picker.js +6 -1
  27. package/lib/typescript/src/components/DatePicker/DatePicker.d.ts +1 -0
  28. package/lib/typescript/src/components/DatePicker/DatePicker.d.ts.map +1 -1
  29. package/lib/typescript/src/components/DeckSwiper/DeckSwiper.d.ts +15 -0
  30. package/lib/typescript/src/components/DeckSwiper/DeckSwiper.d.ts.map +1 -0
  31. package/lib/typescript/src/components/DeckSwiper/DeckSwiperCard.d.ts +13 -0
  32. package/lib/typescript/src/components/DeckSwiper/DeckSwiperCard.d.ts.map +1 -0
  33. package/lib/typescript/src/components/DeckSwiper/index.d.ts +3 -0
  34. package/lib/typescript/src/components/DeckSwiper/index.d.ts.map +1 -0
  35. package/lib/typescript/src/components/Picker/Picker.d.ts +1 -0
  36. package/lib/typescript/src/components/Picker/Picker.d.ts.map +1 -1
  37. package/lib/typescript/src/index.d.ts +1 -0
  38. package/lib/typescript/src/index.d.ts.map +1 -1
  39. package/lib/typescript/src/mappings/DatePicker.d.ts +10 -0
  40. package/lib/typescript/src/mappings/DatePicker.d.ts.map +1 -1
  41. package/lib/typescript/src/mappings/DeckSwiper.d.ts +86 -0
  42. package/lib/typescript/src/mappings/DeckSwiper.d.ts.map +1 -0
  43. package/lib/typescript/src/mappings/DeckSwiperCard.d.ts +16 -0
  44. package/lib/typescript/src/mappings/DeckSwiperCard.d.ts.map +1 -0
  45. package/lib/typescript/src/mappings/HtmlElements.d.ts +77 -0
  46. package/lib/typescript/src/mappings/HtmlElements.d.ts.map +1 -0
  47. package/lib/typescript/src/mappings/Picker.d.ts +10 -0
  48. package/lib/typescript/src/mappings/Picker.d.ts.map +1 -1
  49. package/package.json +5 -3
  50. package/src/components/DatePicker/DatePicker.js +8 -3
  51. package/src/components/DatePicker/DatePicker.tsx +10 -1
  52. package/src/components/DeckSwiper/DeckSwiper.js +35 -0
  53. package/src/components/DeckSwiper/DeckSwiper.tsx +94 -0
  54. package/src/components/DeckSwiper/DeckSwiperCard.js +21 -0
  55. package/src/components/DeckSwiper/DeckSwiperCard.tsx +41 -0
  56. package/src/components/DeckSwiper/index.js +2 -0
  57. package/src/components/DeckSwiper/index.tsx +2 -0
  58. package/src/components/NumberInput.js +9 -9
  59. package/src/components/NumberInput.tsx +11 -11
  60. package/src/components/Picker/Picker.js +9 -3
  61. package/src/components/Picker/Picker.tsx +14 -2
  62. package/src/index.js +1 -0
  63. package/src/index.tsx +2 -0
  64. package/src/mappings/DatePicker.js +8 -2
  65. package/src/mappings/DatePicker.ts +8 -1
  66. package/src/mappings/DeckSwiper.js +48 -0
  67. package/src/mappings/DeckSwiper.ts +57 -0
  68. package/src/mappings/DeckSwiperCard.js +16 -0
  69. package/src/mappings/DeckSwiperCard.ts +20 -0
  70. package/src/mappings/HtmlElements.js +193 -0
  71. package/src/mappings/HtmlElements.ts +207 -0
  72. package/src/mappings/Picker.js +6 -1
  73. package/src/mappings/Picker.ts +6 -0
  74. package/lib/commonjs/mappings/expo/Image.js +0 -90
  75. package/lib/module/mappings/expo/Image.js +0 -83
  76. package/lib/typescript/src/mappings/expo/Image.d.ts +0 -155
  77. package/lib/typescript/src/mappings/expo/Image.d.ts.map +0 -1
  78. package/src/mappings/expo/Image.js +0 -107
  79. package/src/mappings/expo/Image.ts +0 -131
@@ -7,6 +7,7 @@ import {
7
7
  ViewStyle,
8
8
  StyleProp,
9
9
  Dimensions,
10
+ Keyboard,
10
11
  } from "react-native";
11
12
  import { omit, pickBy, identity, isObject } from "lodash";
12
13
  import { SafeAreaView } from "react-native-safe-area-context";
@@ -48,6 +49,7 @@ export type PickerProps = {
48
49
  placeholderTextColor?: string;
49
50
  rightIconName?: string;
50
51
  type?: "solid" | "underline";
52
+ autoDismissKeyboard?: boolean;
51
53
  theme: Theme;
52
54
  Icon: IconSlot["Icon"];
53
55
  };
@@ -84,6 +86,8 @@ function normalizeOptions(options: PickerProps["options"]): PickerOption[] {
84
86
 
85
87
  const { width: deviceWidth, height: deviceHeight } = Dimensions.get("screen");
86
88
  const isIos = Platform.OS === "ios";
89
+ const isWeb = Platform.OS === "web";
90
+
87
91
  const unstyledColor = "rgba(165, 173, 183, 1)";
88
92
  const disabledColor = "rgb(240, 240, 240)";
89
93
  const errorColor = "rgba(255, 69, 100, 1)";
@@ -107,6 +111,7 @@ const Picker: React.FC<PickerProps> = ({
107
111
  placeholderTextColor = unstyledColor,
108
112
  rightIconName,
109
113
  type = "solid",
114
+ autoDismissKeyboard = true,
110
115
  }) => {
111
116
  const androidPickerRef = React.useRef<any | undefined>(undefined);
112
117
 
@@ -138,6 +143,12 @@ const Picker: React.FC<PickerProps> = ({
138
143
  }
139
144
  }, [pickerVisible, androidPickerRef]);
140
145
 
146
+ React.useEffect(() => {
147
+ if (pickerVisible && autoDismissKeyboard) {
148
+ Keyboard.dismiss();
149
+ }
150
+ }, [pickerVisible, autoDismissKeyboard]);
151
+
141
152
  const normalizedOptions = normalizeOptions(options);
142
153
 
143
154
  const pickerOptions = placeholder
@@ -374,9 +385,10 @@ const Picker: React.FC<PickerProps> = ({
374
385
  ) : null}
375
386
 
376
387
  {/* nonIosPicker */}
377
- {!isIos && pickerVisible ? (
388
+ {/* Web version is collapsed by default, always show to allow direct expand */}
389
+ {!isIos && (pickerVisible || isWeb) ? (
378
390
  <NativePicker
379
- enabled={pickerVisible}
391
+ enabled={!disabled}
380
392
  selectedValue={internalValue}
381
393
  onValueChange={handleValueChange}
382
394
  style={styles.nonIosPicker}
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 { DeckSwiper, DeckSwiperCard } from "./components/DeckSwiper";
34
35
  /* Deprecated: Fix or Delete! */
35
36
  export { default as DatePicker } from "./components/DatePicker/DatePicker";
36
37
  export { default as Picker } from "./components/Picker/Picker";
package/src/index.tsx CHANGED
@@ -51,6 +51,8 @@ export {
51
51
  RadioButtonFieldGroup,
52
52
  } from "./components/RadioButton/index";
53
53
 
54
+ export { DeckSwiper, DeckSwiperCard } from "./components/DeckSwiper";
55
+
54
56
  /* Deprecated: Fix or Delete! */
55
57
  export { default as DatePicker } from "./components/DatePicker/DatePicker";
56
58
  export { default as Picker } from "./components/Picker/Picker";
@@ -1,4 +1,4 @@
1
- import { COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, GROUPS, Triggers, StylesPanelSections, createNumberProp, createColorProp, } from "@draftbit/types";
1
+ import { COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, GROUPS, Triggers, StylesPanelSections, createNumberProp, createColorProp, createStaticBoolProp, } from "@draftbit/types";
2
2
  const SEED_DATA_PROPS = {
3
3
  mode: {
4
4
  label: "Mode",
@@ -31,7 +31,8 @@ const SEED_DATA_PROPS = {
31
31
  label: "Border Color",
32
32
  }),
33
33
  borderColorActive: createColorProp({
34
- label: "Border Color",
34
+ label: "Active Border Color",
35
+ description: "Color of border when date picker is active",
35
36
  }),
36
37
  format: {
37
38
  label: "Format",
@@ -171,6 +172,11 @@ export const SEED_DATA = [
171
172
  required: true,
172
173
  group: GROUPS.basic,
173
174
  },
175
+ autoDismissKeyboard: createStaticBoolProp({
176
+ label: "Auto dismiss keyboard",
177
+ description: "Automatically dismiss keyboard when DatePicker is opened",
178
+ defaultValue: true,
179
+ }),
174
180
  },
175
181
  },
176
182
  ];
@@ -8,6 +8,7 @@ import {
8
8
  StylesPanelSections,
9
9
  createNumberProp,
10
10
  createColorProp,
11
+ createStaticBoolProp,
11
12
  } from "@draftbit/types";
12
13
 
13
14
  const SEED_DATA_PROPS = {
@@ -42,7 +43,8 @@ const SEED_DATA_PROPS = {
42
43
  label: "Border Color",
43
44
  }),
44
45
  borderColorActive: createColorProp({
45
- label: "Border Color",
46
+ label: "Active Border Color",
47
+ description: "Color of border when date picker is active",
46
48
  }),
47
49
  format: {
48
50
  label: "Format",
@@ -185,6 +187,11 @@ export const SEED_DATA = [
185
187
  required: true,
186
188
  group: GROUPS.basic,
187
189
  },
190
+ autoDismissKeyboard: createStaticBoolProp({
191
+ label: "Auto dismiss keyboard",
192
+ description: "Automatically dismiss keyboard when DatePicker is opened",
193
+ defaultValue: true,
194
+ }),
188
195
  },
189
196
  },
190
197
  ];
@@ -0,0 +1,48 @@
1
+ import { COMPONENT_TYPES, Triggers, createActionProp, createStaticNumberProp, createStaticBoolProp, BLOCK_STYLES_SECTIONS, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Deck Swiper",
4
+ tag: "DeckSwiper",
5
+ description: "Deck swiper container",
6
+ category: COMPONENT_TYPES.swiper,
7
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
8
+ layout: {
9
+ width: "100%",
10
+ },
11
+ triggers: [Triggers.OnIndexChanged, Triggers.OnEndReached],
12
+ props: {
13
+ onIndexChanged: createActionProp({
14
+ label: "On index changed",
15
+ description: "Action to execute when swipe to new index",
16
+ }),
17
+ onEndReached: createActionProp({
18
+ label: "On end reached",
19
+ description: "Action to execute when end of swiping reached",
20
+ }),
21
+ startCardIndex: createStaticNumberProp({
22
+ label: "Start card index",
23
+ description: "Index of card to start swiping from",
24
+ defaultValue: 0,
25
+ }),
26
+ infiniteSwiping: createStaticBoolProp({
27
+ label: "Infinite swiping",
28
+ description: "Whether to infinitley loop through cards or not",
29
+ }),
30
+ verticalEnabled: createStaticBoolProp({
31
+ label: "Vertical swipe enabled",
32
+ description: "Whether cards should be swipeable vertically or not",
33
+ defaultValue: true,
34
+ }),
35
+ horizontalEnabled: createStaticBoolProp({
36
+ label: "Horizontal swipe enabled",
37
+ description: "Whether cards should be swipeable horizontally or not",
38
+ defaultValue: true,
39
+ }),
40
+ visibleCardCount: createStaticNumberProp({
41
+ label: "Visible card count",
42
+ description: "Number of cards visible behind (and including) the current card",
43
+ defaultValue: 1,
44
+ min: 1,
45
+ step: 1,
46
+ }),
47
+ },
48
+ };
@@ -0,0 +1,57 @@
1
+ import {
2
+ COMPONENT_TYPES,
3
+ Triggers,
4
+ createActionProp,
5
+ createStaticNumberProp,
6
+ createStaticBoolProp,
7
+ BLOCK_STYLES_SECTIONS,
8
+ } from "@draftbit/types";
9
+
10
+ export const SEED_DATA = {
11
+ name: "Deck Swiper",
12
+ tag: "DeckSwiper",
13
+ description: "Deck swiper container",
14
+ category: COMPONENT_TYPES.swiper,
15
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
16
+ layout: {
17
+ width: "100%",
18
+ },
19
+ triggers: [Triggers.OnIndexChanged, Triggers.OnEndReached],
20
+ props: {
21
+ onIndexChanged: createActionProp({
22
+ label: "On index changed",
23
+ description: "Action to execute when swipe to new index",
24
+ }),
25
+ onEndReached: createActionProp({
26
+ label: "On end reached",
27
+ description: "Action to execute when end of swiping reached",
28
+ }),
29
+ startCardIndex: createStaticNumberProp({
30
+ label: "Start card index",
31
+ description: "Index of card to start swiping from",
32
+ defaultValue: 0,
33
+ }),
34
+ infiniteSwiping: createStaticBoolProp({
35
+ label: "Infinite swiping",
36
+ description: "Whether to infinitley loop through cards or not",
37
+ }),
38
+ verticalEnabled: createStaticBoolProp({
39
+ label: "Vertical swipe enabled",
40
+ description: "Whether cards should be swipeable vertically or not",
41
+ defaultValue: true,
42
+ }),
43
+ horizontalEnabled: createStaticBoolProp({
44
+ label: "Horizontal swipe enabled",
45
+ description: "Whether cards should be swipeable horizontally or not",
46
+ defaultValue: true,
47
+ }),
48
+ visibleCardCount: createStaticNumberProp({
49
+ label: "Visible card count",
50
+ description:
51
+ "Number of cards visible behind (and including) the current card",
52
+ defaultValue: 1,
53
+ min: 1,
54
+ step: 1,
55
+ }),
56
+ },
57
+ };
@@ -0,0 +1,16 @@
1
+ import { COMPONENT_TYPES, CONTAINER_COMPONENT_STYLES_SECTIONS, } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Deck Swiper Card",
4
+ tag: "DeckSwiperCard",
5
+ description: "Single Deck Swiper Card item to be used in DeckSwiper",
6
+ category: COMPONENT_TYPES.swiper,
7
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
8
+ layout: {
9
+ flex: 1,
10
+ alignItems: "center",
11
+ justifyContent: "center",
12
+ padding: 20,
13
+ borderWidth: 2,
14
+ },
15
+ props: {},
16
+ };
@@ -0,0 +1,20 @@
1
+ import {
2
+ COMPONENT_TYPES,
3
+ CONTAINER_COMPONENT_STYLES_SECTIONS,
4
+ } from "@draftbit/types";
5
+
6
+ export const SEED_DATA = {
7
+ name: "Deck Swiper Card",
8
+ tag: "DeckSwiperCard",
9
+ description: "Single Deck Swiper Card item to be used in DeckSwiper",
10
+ category: COMPONENT_TYPES.swiper,
11
+ stylesPanelSections: CONTAINER_COMPONENT_STYLES_SECTIONS,
12
+ layout: {
13
+ flex: 1,
14
+ alignItems: "center",
15
+ justifyContent: "center",
16
+ padding: 20,
17
+ borderWidth: 2,
18
+ },
19
+ props: {},
20
+ };
@@ -0,0 +1,193 @@
1
+ import { COMPONENT_TYPES, createTextProp, FORM_TYPES, PROP_TYPES, GROUPS, StylesPanelSections, Triggers, } from "@draftbit/types";
2
+ const SEED_DATA_TRIGGERS = [Triggers.OnValueChange];
3
+ const ELEMENT_SEED_DATA = {
4
+ doc_link: "https://www.npmjs.com/package/@expo/html-elements",
5
+ code_link: "https://github.com/expo/expo/tree/master/packages/html-elements",
6
+ packageName: "@expo/html-elements",
7
+ stylesPanelSections: [
8
+ StylesPanelSections.Typography,
9
+ StylesPanelSections.LayoutSelectedItem,
10
+ StylesPanelSections.MarginsAndPaddings,
11
+ StylesPanelSections.Effects,
12
+ ],
13
+ layout: {
14
+ margin: 0,
15
+ },
16
+ triggers: SEED_DATA_TRIGGERS,
17
+ category: COMPONENT_TYPES.webelement,
18
+ };
19
+ const HEADING_SEED_DATA = {
20
+ ...ELEMENT_SEED_DATA,
21
+ category: COMPONENT_TYPES.text,
22
+ props: {
23
+ accessibilityLabel: {
24
+ group: GROUPS.accessibility,
25
+ name: "accessibilityLabel",
26
+ label: "accessibilityLabel",
27
+ description: "Overrides the text that's read by the screen reader when the user interacts with the element. By default, the label is constructed by traversing all the children and accumulating all the Text nodes separated by space.",
28
+ editable: true,
29
+ required: false,
30
+ formType: FORM_TYPES.string,
31
+ propType: PROP_TYPES.STRING,
32
+ defaultValue: null,
33
+ },
34
+ selectable: {
35
+ group: GROUPS.advanced,
36
+ name: "selectable",
37
+ label: "selectable",
38
+ description: "Lets the user select text, to use the native copy and paste functionality.",
39
+ editable: true,
40
+ required: false,
41
+ formType: FORM_TYPES.boolean,
42
+ propType: PROP_TYPES.BOOLEAN,
43
+ defaultValue: null,
44
+ },
45
+ children: {
46
+ group: GROUPS.data,
47
+ label: "Text",
48
+ description: "Text",
49
+ editable: true,
50
+ required: true,
51
+ formType: FORM_TYPES.string,
52
+ propType: PROP_TYPES.STRING,
53
+ defaultValue: "Your Headline Here",
54
+ },
55
+ },
56
+ };
57
+ const TEXT_SEED_DATA = {
58
+ ...ELEMENT_SEED_DATA,
59
+ category: COMPONENT_TYPES.text,
60
+ props: {
61
+ children: {
62
+ group: GROUPS.data,
63
+ label: "Text",
64
+ description: "Text",
65
+ defaultValue: "Your Text Here",
66
+ editable: true,
67
+ required: true,
68
+ formType: FORM_TYPES.string,
69
+ propType: PROP_TYPES.STRING,
70
+ },
71
+ },
72
+ };
73
+ export const SEED_DATA = [
74
+ {
75
+ name: "H1",
76
+ tag: "H1",
77
+ ...HEADING_SEED_DATA,
78
+ },
79
+ {
80
+ name: "H2",
81
+ tag: "H2",
82
+ ...HEADING_SEED_DATA,
83
+ },
84
+ {
85
+ name: "H3",
86
+ tag: "H3",
87
+ ...HEADING_SEED_DATA,
88
+ },
89
+ {
90
+ name: "H4",
91
+ tag: "H4",
92
+ ...HEADING_SEED_DATA,
93
+ },
94
+ {
95
+ name: "H5",
96
+ tag: "H5",
97
+ ...HEADING_SEED_DATA,
98
+ },
99
+ {
100
+ name: "H6",
101
+ tag: "H6",
102
+ ...HEADING_SEED_DATA,
103
+ },
104
+ {
105
+ name: "Anchor",
106
+ tag: "A",
107
+ ...TEXT_SEED_DATA,
108
+ props: {
109
+ href: createTextProp({
110
+ label: "href",
111
+ description: "Specify the URL",
112
+ defaultValue: "",
113
+ }),
114
+ target: {
115
+ group: GROUPS.basic,
116
+ label: "target",
117
+ description: "decide where link should open",
118
+ formType: FORM_TYPES.flatArray,
119
+ defaultValue: "_blank",
120
+ options: ["_blank", "_self", "_parent", "_top"],
121
+ },
122
+ },
123
+ },
124
+ {
125
+ name: "Paragraph",
126
+ tag: "P",
127
+ ...TEXT_SEED_DATA,
128
+ props: {
129
+ // NOTE - Keeping the props commented until we figure out a way to use this props from draftbit side.
130
+ // strong: createBoolProp({
131
+ // label: "Strong",
132
+ // description: "Strong",
133
+ // }),
134
+ // strike: createBoolProp({
135
+ // label: "Strike",
136
+ // description: "Strike through",
137
+ // }),
138
+ // italic: createBoolProp({
139
+ // label: "Italic",
140
+ // description: "Italic Fonts",
141
+ // }),
142
+ // bold: createBoolProp({
143
+ // label: "Bold",
144
+ // description: "Bold",
145
+ // }),
146
+ },
147
+ },
148
+ {
149
+ name: "Code",
150
+ tag: "Code",
151
+ ...TEXT_SEED_DATA,
152
+ },
153
+ {
154
+ name: "Pre",
155
+ tag: "Pre",
156
+ ...TEXT_SEED_DATA,
157
+ },
158
+ {
159
+ name: "Mark",
160
+ tag: "Mark",
161
+ ...TEXT_SEED_DATA,
162
+ },
163
+ {
164
+ name: "BR",
165
+ tag: "BR",
166
+ ...TEXT_SEED_DATA,
167
+ },
168
+ {
169
+ name: "BlockQuote",
170
+ tag: "BlockQuote",
171
+ ...TEXT_SEED_DATA,
172
+ },
173
+ {
174
+ name: "HR",
175
+ tag: "HR",
176
+ ...TEXT_SEED_DATA,
177
+ },
178
+ {
179
+ name: "Time",
180
+ tag: "Time",
181
+ ...ELEMENT_SEED_DATA,
182
+ },
183
+ {
184
+ name: "UL",
185
+ tag: "UL",
186
+ ...ELEMENT_SEED_DATA,
187
+ },
188
+ {
189
+ name: "LI",
190
+ tag: "LI",
191
+ ...ELEMENT_SEED_DATA,
192
+ },
193
+ ];
@@ -0,0 +1,207 @@
1
+ import {
2
+ COMPONENT_TYPES,
3
+ createTextProp,
4
+ FORM_TYPES,
5
+ PROP_TYPES,
6
+ GROUPS,
7
+ StylesPanelSections,
8
+ Triggers,
9
+ } from "@draftbit/types";
10
+ const SEED_DATA_TRIGGERS = [Triggers.OnValueChange];
11
+
12
+ const ELEMENT_SEED_DATA = {
13
+ doc_link: "https://www.npmjs.com/package/@expo/html-elements",
14
+ code_link: "https://github.com/expo/expo/tree/master/packages/html-elements",
15
+ packageName: "@expo/html-elements",
16
+ stylesPanelSections: [
17
+ StylesPanelSections.Typography,
18
+ StylesPanelSections.LayoutSelectedItem,
19
+ StylesPanelSections.MarginsAndPaddings,
20
+ StylesPanelSections.Effects,
21
+ ],
22
+ layout: {
23
+ margin: 0,
24
+ },
25
+ triggers: SEED_DATA_TRIGGERS,
26
+ category: COMPONENT_TYPES.webelement,
27
+ };
28
+
29
+ const HEADING_SEED_DATA = {
30
+ ...ELEMENT_SEED_DATA,
31
+ category: COMPONENT_TYPES.text,
32
+ props: {
33
+ accessibilityLabel: {
34
+ group: GROUPS.accessibility,
35
+ name: "accessibilityLabel",
36
+ label: "accessibilityLabel",
37
+ description:
38
+ "Overrides the text that's read by the screen reader when the user interacts with the element. By default, the label is constructed by traversing all the children and accumulating all the Text nodes separated by space.",
39
+ editable: true,
40
+ required: false,
41
+ formType: FORM_TYPES.string,
42
+ propType: PROP_TYPES.STRING,
43
+ defaultValue: null,
44
+ },
45
+ selectable: {
46
+ group: GROUPS.advanced,
47
+ name: "selectable",
48
+ label: "selectable",
49
+ description:
50
+ "Lets the user select text, to use the native copy and paste functionality.",
51
+ editable: true,
52
+ required: false,
53
+ formType: FORM_TYPES.boolean,
54
+ propType: PROP_TYPES.BOOLEAN,
55
+ defaultValue: null,
56
+ },
57
+ children: {
58
+ group: GROUPS.data,
59
+ label: "Text",
60
+ description: "Text",
61
+ editable: true,
62
+ required: true,
63
+ formType: FORM_TYPES.string,
64
+ propType: PROP_TYPES.STRING,
65
+ defaultValue: "Your Headline Here",
66
+ },
67
+ },
68
+ };
69
+
70
+ const TEXT_SEED_DATA = {
71
+ ...ELEMENT_SEED_DATA,
72
+ category: COMPONENT_TYPES.text,
73
+ props: {
74
+ children: {
75
+ group: GROUPS.data,
76
+ label: "Text",
77
+ description: "Text",
78
+ defaultValue: "Your Text Here",
79
+ editable: true,
80
+ required: true,
81
+ formType: FORM_TYPES.string,
82
+ propType: PROP_TYPES.STRING,
83
+ },
84
+ },
85
+ };
86
+
87
+ export const SEED_DATA = [
88
+ {
89
+ name: "H1",
90
+ tag: "H1",
91
+ ...HEADING_SEED_DATA,
92
+ },
93
+ {
94
+ name: "H2",
95
+ tag: "H2",
96
+ ...HEADING_SEED_DATA,
97
+ },
98
+ {
99
+ name: "H3",
100
+ tag: "H3",
101
+ ...HEADING_SEED_DATA,
102
+ },
103
+ {
104
+ name: "H4",
105
+ tag: "H4",
106
+ ...HEADING_SEED_DATA,
107
+ },
108
+ {
109
+ name: "H5",
110
+ tag: "H5",
111
+ ...HEADING_SEED_DATA,
112
+ },
113
+ {
114
+ name: "H6",
115
+ tag: "H6",
116
+ ...HEADING_SEED_DATA,
117
+ },
118
+ {
119
+ name: "Anchor",
120
+ tag: "A",
121
+ ...TEXT_SEED_DATA,
122
+ props: {
123
+ href: createTextProp({
124
+ label: "href",
125
+ description: "Specify the URL",
126
+ defaultValue: "",
127
+ }),
128
+ target: {
129
+ group: GROUPS.basic,
130
+ label: "target",
131
+ description: "decide where link should open",
132
+ formType: FORM_TYPES.flatArray,
133
+ defaultValue: "_blank",
134
+ options: ["_blank", "_self", "_parent", "_top"],
135
+ },
136
+ },
137
+ },
138
+ {
139
+ name: "Paragraph",
140
+ tag: "P",
141
+ ...TEXT_SEED_DATA,
142
+ props: {
143
+ // NOTE - Keeping the props commented until we figure out a way to use this props from draftbit side.
144
+ // strong: createBoolProp({
145
+ // label: "Strong",
146
+ // description: "Strong",
147
+ // }),
148
+ // strike: createBoolProp({
149
+ // label: "Strike",
150
+ // description: "Strike through",
151
+ // }),
152
+ // italic: createBoolProp({
153
+ // label: "Italic",
154
+ // description: "Italic Fonts",
155
+ // }),
156
+ // bold: createBoolProp({
157
+ // label: "Bold",
158
+ // description: "Bold",
159
+ // }),
160
+ },
161
+ },
162
+ {
163
+ name: "Code",
164
+ tag: "Code",
165
+ ...TEXT_SEED_DATA,
166
+ },
167
+ {
168
+ name: "Pre",
169
+ tag: "Pre",
170
+ ...TEXT_SEED_DATA,
171
+ },
172
+ {
173
+ name: "Mark",
174
+ tag: "Mark",
175
+ ...TEXT_SEED_DATA,
176
+ },
177
+ {
178
+ name: "BR",
179
+ tag: "BR",
180
+ ...TEXT_SEED_DATA,
181
+ },
182
+ {
183
+ name: "BlockQuote",
184
+ tag: "BlockQuote",
185
+ ...TEXT_SEED_DATA,
186
+ },
187
+ {
188
+ name: "HR",
189
+ tag: "HR",
190
+ ...TEXT_SEED_DATA,
191
+ },
192
+ {
193
+ name: "Time",
194
+ tag: "Time",
195
+ ...ELEMENT_SEED_DATA,
196
+ },
197
+ {
198
+ name: "UL",
199
+ tag: "UL",
200
+ ...ELEMENT_SEED_DATA,
201
+ },
202
+ {
203
+ name: "LI",
204
+ tag: "LI",
205
+ ...ELEMENT_SEED_DATA,
206
+ },
207
+ ];
@@ -1,4 +1,4 @@
1
- import { COMPONENT_TYPES, Triggers, GROUPS, FORM_TYPES, PROP_TYPES, FIELD_NAME, createIconSizeProp, createColorProp, StylesPanelSections, } from "@draftbit/types";
1
+ import { COMPONENT_TYPES, Triggers, GROUPS, FORM_TYPES, PROP_TYPES, FIELD_NAME, createIconSizeProp, createColorProp, StylesPanelSections, createStaticBoolProp, } from "@draftbit/types";
2
2
  const SEED_DATA_PROPS = {
3
3
  label: {
4
4
  group: GROUPS.data,
@@ -142,6 +142,11 @@ export const SEED_DATA = [
142
142
  },
143
143
  iconSize: createIconSizeProp({ defaultValue: 24 }),
144
144
  iconColor: createColorProp({ label: "Icon Color" }),
145
+ autoDismissKeyboard: createStaticBoolProp({
146
+ label: "Auto dismiss keyboard",
147
+ description: "Automatically dismiss keyboard when Picker is opened",
148
+ defaultValue: true,
149
+ }),
145
150
  },
146
151
  layout: {},
147
152
  },