@draftbit/core 46.2.3 → 46.2.4-2fc21b.3

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 (61) hide show
  1. package/lib/commonjs/components/Accordion/AccordionItem.js +5 -25
  2. package/lib/commonjs/components/Banner.js +24 -4
  3. package/lib/commonjs/components/CardContainer.js +15 -5
  4. package/lib/commonjs/components/Carousel.js +34 -10
  5. package/lib/commonjs/components/Checkbox/CheckboxGroupRow.js +24 -6
  6. package/lib/commonjs/components/CircularProgress.js +15 -7
  7. package/lib/commonjs/components/Config.js +1 -0
  8. package/lib/commonjs/components/Image.js +16 -3
  9. package/lib/commonjs/components/NumberInput.js +13 -2
  10. package/lib/commonjs/components/Portal/PortalManager.js +19 -11
  11. package/lib/commonjs/components/ProgressBar.js +23 -7
  12. package/lib/commonjs/components/SVG.js +49 -0
  13. package/lib/commonjs/components/Slider.js +24 -5
  14. package/lib/commonjs/components/TextField.js +2 -1
  15. package/lib/commonjs/components/Touchable.js +16 -2
  16. package/lib/commonjs/constants.js +1 -1
  17. package/lib/commonjs/index.js +8 -0
  18. package/lib/commonjs/mappings/Image.js +2 -2
  19. package/lib/commonjs/mappings/NumberInput.js +146 -149
  20. package/lib/commonjs/mappings/SVG.js +23 -0
  21. package/lib/commonjs/mappings/TextArea.js +188 -193
  22. package/lib/commonjs/mappings/TextField.js +7 -8
  23. package/lib/commonjs/mappings/TextInput.js +178 -180
  24. package/lib/module/components/Config.js +1 -0
  25. package/lib/module/components/SVG.js +32 -0
  26. package/lib/module/components/TextField.js +2 -1
  27. package/lib/module/index.js +1 -0
  28. package/lib/module/mappings/Image.js +2 -2
  29. package/lib/module/mappings/NumberInput.js +146 -149
  30. package/lib/module/mappings/SVG.js +14 -0
  31. package/lib/module/mappings/TextArea.js +188 -193
  32. package/lib/module/mappings/TextField.js +7 -8
  33. package/lib/module/mappings/TextInput.js +178 -180
  34. package/lib/typescript/src/components/Config.d.ts +1 -0
  35. package/lib/typescript/src/components/SVG.d.ts +8 -0
  36. package/lib/typescript/src/components/TextField.d.ts +1 -0
  37. package/lib/typescript/src/index.d.ts +1 -0
  38. package/lib/typescript/src/mappings/SVG.d.ts +22 -0
  39. package/lib/typescript/src/mappings/TextArea.d.ts +42 -42
  40. package/lib/typescript/src/mappings/TextField.d.ts +120 -110
  41. package/package.json +4 -3
  42. package/src/components/Config.js +1 -0
  43. package/src/components/Config.ts +1 -0
  44. package/src/components/SVG.js +14 -0
  45. package/src/components/SVG.tsx +35 -0
  46. package/src/components/TextField.js +2 -2
  47. package/src/components/TextField.tsx +3 -1
  48. package/src/index.js +1 -0
  49. package/src/index.tsx +1 -0
  50. package/src/mappings/Image.js +2 -2
  51. package/src/mappings/Image.ts +2 -2
  52. package/src/mappings/NumberInput.js +160 -163
  53. package/src/mappings/NumberInput.ts +165 -168
  54. package/src/mappings/SVG.js +14 -0
  55. package/src/mappings/SVG.ts +15 -0
  56. package/src/mappings/TextArea.js +213 -220
  57. package/src/mappings/TextArea.ts +219 -227
  58. package/src/mappings/TextField.js +6 -9
  59. package/src/mappings/TextField.ts +7 -11
  60. package/src/mappings/TextInput.js +205 -208
  61. package/src/mappings/TextInput.ts +212 -215
@@ -1,152 +1,4 @@
1
1
  import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, Triggers, StylesPanelSections } from "@draftbit/types";
2
- const NUMBER_INPUT_PROPS = {
3
- allowFontScaling: {
4
- group: GROUPS.advanced,
5
- label: "Allow Font Scaling",
6
- description: "Whether fonts should scale to respect Text Size in the user's accessibility settings. (Default: true)",
7
- editable: true,
8
- required: false,
9
- defaultValue: null,
10
- formType: FORM_TYPES.boolean,
11
- propType: PROP_TYPES.BOOLEAN
12
- },
13
- autoFocus: {
14
- group: GROUPS.basic,
15
- label: "Auto Focus",
16
- description: "Focuses the input on load in and brings up the keyboard",
17
- editable: true,
18
- required: false,
19
- defaultValue: null,
20
- formType: FORM_TYPES.boolean,
21
- propType: PROP_TYPES.BOOLEAN
22
- },
23
- caretHidden: {
24
- group: GROUPS.advanced,
25
- label: "Hide Caret",
26
- description: "Hides the caret(the line small line underneath each showing where you're editing/typing",
27
- editable: true,
28
- required: false,
29
- defaultValue: null,
30
- formType: FORM_TYPES.boolean,
31
- propType: PROP_TYPES.BOOLEAN
32
- },
33
- contextMenuHidden: {
34
- group: GROUPS.advanced,
35
- label: "Hide Context Menu",
36
- description: "Hides the system context menu (Default: false)",
37
- editable: true,
38
- required: false,
39
- defaultValue: null,
40
- formType: FORM_TYPES.boolean,
41
- propType: PROP_TYPES.BOOLEAN
42
- },
43
- editable: {
44
- group: GROUPS.advanced,
45
- label: "Editable",
46
- description: "If false, the text is not editable",
47
- editable: true,
48
- required: false,
49
- defaultValue: true,
50
- formType: FORM_TYPES.boolean,
51
- propType: PROP_TYPES.BOOLEAN
52
- },
53
- keyboardAppearance: {
54
- group: GROUPS.advanced,
55
- label: "Keyboard Appearance",
56
- description: "Determines the color of the keyboard.(iOS Only)",
57
- editable: true,
58
- required: false,
59
- defaultValue: null,
60
- options: ["default", "light", "dark"],
61
- formType: FORM_TYPES.flatArray,
62
- propType: PROP_TYPES.STRING
63
- },
64
- keyboardType: {
65
- group: GROUPS.advanced,
66
- label: "Keyboard Type",
67
- description: "Determines what keyboard is given to the user.",
68
- editable: true,
69
- required: false,
70
- defaultValue: null,
71
- options: ["numeric", "numbers-and-punctuation", "number-pad"],
72
- formType: FORM_TYPES.flatArray,
73
- propType: PROP_TYPES.STRING
74
- },
75
- maxLength: {
76
- group: GROUPS.basic,
77
- label: "Max Length",
78
- description: "Limits the input to a set number of characters.",
79
- editable: true,
80
- required: false,
81
- defaultValue: null,
82
- min: 0,
83
- step: 1,
84
- precision: 0,
85
- formType: FORM_TYPES.number,
86
- propType: PROP_TYPES.NUMBER
87
- },
88
- placeholder: {
89
- group: GROUPS.basic,
90
- label: "Placeholder Text",
91
- description: "The text that is shown on load when no value is available.",
92
- editable: true,
93
- required: false,
94
- defaultValue: "Enter a number...",
95
- formType: FORM_TYPES.string,
96
- propType: PROP_TYPES.STRING
97
- },
98
- placeholderTextColor: {
99
- group: GROUPS.basic,
100
- label: "Placeholder Text Color",
101
- description: "The color of the placeholder text.",
102
- editable: true,
103
- required: false,
104
- defaultValue: null,
105
- formType: FORM_TYPES.color,
106
- propType: PROP_TYPES.STRING
107
- },
108
- returnKeyLabel: {
109
- group: GROUPS.advanced,
110
- label: "Return Key Label",
111
- description: "(Android Only) Sets the label on the return key (use this instead of rewturnKeyType)",
112
- editable: true,
113
- required: false,
114
- defaultValue: null,
115
- formType: FORM_TYPES.string,
116
- propType: PROP_TYPES.STRING
117
- },
118
- returnKeyType: {
119
- group: GROUPS.advanced,
120
- label: "Return Key Type",
121
- description: "Determines how the return key should look like",
122
- editable: true,
123
- required: false,
124
- defaultValue: null,
125
- options: ["done", "go", "next", "search", "send", "none", "previous", "default", "emergency-call", "google", "join", "route", "yahoo"],
126
- formType: FORM_TYPES.flatArray,
127
- propType: PROP_TYPES.STRING
128
- },
129
- selectionColor: {
130
- group: GROUPS.advanced,
131
- label: "Selection Color",
132
- description: "Color of the highlighted portion when selecting.",
133
- editable: true,
134
- required: false,
135
- defaultValue: null,
136
- formType: FORM_TYPES.color,
137
- propType: PROP_TYPES.STRING
138
- },
139
- selectTextOnFocus: {
140
- group: GROUPS.advanced,
141
- label: "Select Text on Focus",
142
- description: "If true, all the text will automatically be selected on focus",
143
- editable: true,
144
- required: false,
145
- defaultValue: null,
146
- formType: FORM_TYPES.boolean,
147
- propType: PROP_TYPES.BOOLEAN
148
- }
149
- };
150
2
  export const SEED_DATA_PROPS = {
151
3
  style: {
152
4
  group: GROUPS.basic,
@@ -226,6 +78,151 @@ export const SEED_DATA = [{
226
78
  },
227
79
  triggers: [Triggers.OnChangeText],
228
80
  props: { ...SEED_DATA_PROPS,
229
- ...NUMBER_INPUT_PROPS
81
+ allowFontScaling: {
82
+ group: GROUPS.advanced,
83
+ label: "Allow Font Scaling",
84
+ description: "Whether fonts should scale to respect Text Size in the user's accessibility settings. (Default: true)",
85
+ editable: true,
86
+ required: false,
87
+ defaultValue: null,
88
+ formType: FORM_TYPES.boolean,
89
+ propType: PROP_TYPES.BOOLEAN
90
+ },
91
+ autoFocus: {
92
+ group: GROUPS.basic,
93
+ label: "Auto Focus",
94
+ description: "Focuses the input on load in and brings up the keyboard",
95
+ editable: true,
96
+ required: false,
97
+ defaultValue: null,
98
+ formType: FORM_TYPES.boolean,
99
+ propType: PROP_TYPES.BOOLEAN
100
+ },
101
+ caretHidden: {
102
+ group: GROUPS.advanced,
103
+ label: "Hide Caret",
104
+ description: "Hides the caret(the line small line underneath each showing where you're editing/typing",
105
+ editable: true,
106
+ required: false,
107
+ defaultValue: null,
108
+ formType: FORM_TYPES.boolean,
109
+ propType: PROP_TYPES.BOOLEAN
110
+ },
111
+ contextMenuHidden: {
112
+ group: GROUPS.advanced,
113
+ label: "Hide Context Menu",
114
+ description: "Hides the system context menu (Default: false)",
115
+ editable: true,
116
+ required: false,
117
+ defaultValue: null,
118
+ formType: FORM_TYPES.boolean,
119
+ propType: PROP_TYPES.BOOLEAN
120
+ },
121
+ editable: {
122
+ group: GROUPS.advanced,
123
+ label: "Editable",
124
+ description: "If false, the text is not editable",
125
+ editable: true,
126
+ required: false,
127
+ defaultValue: true,
128
+ formType: FORM_TYPES.boolean,
129
+ propType: PROP_TYPES.BOOLEAN
130
+ },
131
+ keyboardAppearance: {
132
+ group: GROUPS.advanced,
133
+ label: "Keyboard Appearance",
134
+ description: "Determines the color of the keyboard.(iOS Only)",
135
+ editable: true,
136
+ required: false,
137
+ defaultValue: null,
138
+ options: ["default", "light", "dark"],
139
+ formType: FORM_TYPES.flatArray,
140
+ propType: PROP_TYPES.STRING
141
+ },
142
+ keyboardType: {
143
+ group: GROUPS.advanced,
144
+ label: "Keyboard Type",
145
+ description: "Determines what keyboard is given to the user.",
146
+ editable: true,
147
+ required: false,
148
+ defaultValue: null,
149
+ options: ["numeric", "numbers-and-punctuation", "number-pad"],
150
+ formType: FORM_TYPES.flatArray,
151
+ propType: PROP_TYPES.STRING
152
+ },
153
+ maxLength: {
154
+ group: GROUPS.basic,
155
+ label: "Max Length",
156
+ description: "Limits the input to a set number of characters.",
157
+ editable: true,
158
+ required: false,
159
+ defaultValue: null,
160
+ min: 0,
161
+ step: 1,
162
+ precision: 0,
163
+ formType: FORM_TYPES.number,
164
+ propType: PROP_TYPES.NUMBER
165
+ },
166
+ placeholder: {
167
+ group: GROUPS.basic,
168
+ label: "Placeholder Text",
169
+ description: "The text that is shown on load when no value is available.",
170
+ editable: true,
171
+ required: false,
172
+ defaultValue: "Enter a number...",
173
+ formType: FORM_TYPES.string,
174
+ propType: PROP_TYPES.STRING
175
+ },
176
+ placeholderTextColor: {
177
+ group: GROUPS.basic,
178
+ label: "Placeholder Text Color",
179
+ description: "The color of the placeholder text.",
180
+ editable: true,
181
+ required: false,
182
+ defaultValue: null,
183
+ formType: FORM_TYPES.color,
184
+ propType: PROP_TYPES.STRING
185
+ },
186
+ returnKeyLabel: {
187
+ group: GROUPS.advanced,
188
+ label: "Return Key Label",
189
+ description: "(Android Only) Sets the label on the return key (use this instead of rewturnKeyType)",
190
+ editable: true,
191
+ required: false,
192
+ defaultValue: null,
193
+ formType: FORM_TYPES.string,
194
+ propType: PROP_TYPES.STRING
195
+ },
196
+ returnKeyType: {
197
+ group: GROUPS.advanced,
198
+ label: "Return Key Type",
199
+ description: "Determines how the return key should look like",
200
+ editable: true,
201
+ required: false,
202
+ defaultValue: null,
203
+ options: ["done", "go", "next", "search", "send", "none", "previous", "default", "emergency-call", "google", "join", "route", "yahoo"],
204
+ formType: FORM_TYPES.flatArray,
205
+ propType: PROP_TYPES.STRING
206
+ },
207
+ selectionColor: {
208
+ group: GROUPS.advanced,
209
+ label: "Selection Color",
210
+ description: "Color of the highlighted portion when selecting.",
211
+ editable: true,
212
+ required: false,
213
+ defaultValue: null,
214
+ formType: FORM_TYPES.color,
215
+ propType: PROP_TYPES.STRING
216
+ },
217
+ selectTextOnFocus: {
218
+ group: GROUPS.advanced,
219
+ label: "Select Text on Focus",
220
+ description: "If true, all the text will automatically be selected on focus",
221
+ editable: true,
222
+ required: false,
223
+ defaultValue: null,
224
+ formType: FORM_TYPES.boolean,
225
+ propType: PROP_TYPES.BOOLEAN
226
+ }
230
227
  }
231
228
  }];
@@ -0,0 +1,14 @@
1
+ import { COMPONENT_TYPES, createSvgProp } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "SVG",
4
+ tag: "SVG",
5
+ description: "An SVG component",
6
+ category: COMPONENT_TYPES.media,
7
+ layout: {
8
+ width: 100,
9
+ height: 100
10
+ },
11
+ props: {
12
+ source: createSvgProp()
13
+ }
14
+ };
@@ -1,194 +1,4 @@
1
1
  import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, Triggers } from "@draftbit/types";
2
- const TEXT_AREA_PROPS = {
3
- allowFontScaling: {
4
- group: GROUPS.advanced,
5
- label: "Allow Font Scaling",
6
- description: "Whether fonts should scale to respect Text Size in the user's accessibility settings. (Default: true)",
7
- editable: true,
8
- required: false,
9
- defaultValue: null,
10
- formType: FORM_TYPES.boolean,
11
- propType: PROP_TYPES.BOOLEAN
12
- },
13
- autoCapitalize: {
14
- group: GROUPS.advanced,
15
- label: "Auto Capitalize",
16
- description: "Can automatically capitalize sentences, words, and characters (Default: none).",
17
- editable: true,
18
- required: false,
19
- defaultValue: null,
20
- options: ["none", "sentences", "words", "characters"],
21
- formType: FORM_TYPES.flatArray,
22
- propType: PROP_TYPES.STRING
23
- },
24
- autoCorrect: {
25
- group: GROUPS.advanced,
26
- label: "Auto Correct",
27
- description: "Enables auto correction",
28
- editable: true,
29
- required: false,
30
- defaultValue: null,
31
- formType: FORM_TYPES.boolean,
32
- propType: PROP_TYPES.BOOLEAN
33
- },
34
- autoFocus: {
35
- group: GROUPS.basic,
36
- label: "Auto Focus",
37
- description: "Focuses the input on load in and brings up the keyboard",
38
- editable: true,
39
- required: false,
40
- defaultValue: null,
41
- formType: FORM_TYPES.boolean,
42
- propType: PROP_TYPES.BOOLEAN
43
- },
44
- caretHidden: {
45
- group: GROUPS.advanced,
46
- label: "Hide Caret",
47
- description: "Hides the caret(the line small line underneath each showing where you're editing/typing",
48
- editable: true,
49
- required: false,
50
- defaultValue: null,
51
- formType: FORM_TYPES.boolean,
52
- propType: PROP_TYPES.BOOLEAN
53
- },
54
- contextMenuHidden: {
55
- group: GROUPS.advanced,
56
- label: "Hide Context Menu",
57
- description: "Hides the system context menu (Default: false)",
58
- editable: true,
59
- required: false,
60
- defaultValue: null,
61
- formType: FORM_TYPES.boolean,
62
- propType: PROP_TYPES.BOOLEAN
63
- },
64
- editable: {
65
- group: GROUPS.advanced,
66
- label: "Editable",
67
- description: "If false, the text is not editable",
68
- editable: true,
69
- required: false,
70
- defaultValue: true,
71
- formType: FORM_TYPES.boolean,
72
- propType: PROP_TYPES.BOOLEAN
73
- },
74
- keyboardAppearance: {
75
- group: GROUPS.advanced,
76
- label: "Keyboard Appearance",
77
- description: "Determines the color of the keyboard.(iOS Only)",
78
- editable: true,
79
- required: false,
80
- defaultValue: null,
81
- options: ["default", "light", "dark"],
82
- formType: FORM_TYPES.flatArray,
83
- propType: PROP_TYPES.STRING
84
- },
85
- keyboardType: {
86
- group: GROUPS.advanced,
87
- label: "Keyboard Type",
88
- description: "Determines what keyboard is given to the user.",
89
- editable: true,
90
- required: false,
91
- defaultValue: null,
92
- options: ["default", "email-address", "numeric", "phone-pad", "ascii-capable", "numbers-and-punctuation", "url", "number-pad", "name-phone-pad", "decimal-pad", "twitter", "web-search", "visible-password"],
93
- formType: FORM_TYPES.flatArray,
94
- propType: PROP_TYPES.STRING
95
- },
96
- maxLength: {
97
- group: GROUPS.basic,
98
- label: "Max Length",
99
- description: "Limits the input to a set number of characters.",
100
- editable: true,
101
- required: false,
102
- defaultValue: null,
103
- min: 0,
104
- step: 1,
105
- precision: 0,
106
- formType: FORM_TYPES.number,
107
- propType: PROP_TYPES.NUMBER
108
- },
109
- placeholder: {
110
- group: GROUPS.data,
111
- label: "Placeholder Text",
112
- description: "The text that is shown on load when no value is available.",
113
- editable: true,
114
- required: false,
115
- defaultValue: "Enter a value...",
116
- formType: FORM_TYPES.string,
117
- propType: PROP_TYPES.STRING
118
- },
119
- placeholderTextColor: {
120
- group: GROUPS.basic,
121
- label: "Placeholder Text Color",
122
- description: "The color of the placeholder text.",
123
- editable: true,
124
- required: false,
125
- defaultValue: null,
126
- formType: FORM_TYPES.color,
127
- propType: PROP_TYPES.STRING
128
- },
129
- returnKeyLabel: {
130
- group: GROUPS.advanced,
131
- label: "Return Key Label",
132
- description: "(Android Only) Sets the label on the return key (use this instead of rewturnKeyType)",
133
- editable: true,
134
- required: false,
135
- defaultValue: null,
136
- formType: FORM_TYPES.string,
137
- propType: PROP_TYPES.STRING
138
- },
139
- returnKeyType: {
140
- group: GROUPS.advanced,
141
- label: "Return Key Type",
142
- description: "Determines how the return key should look like",
143
- editable: true,
144
- required: false,
145
- defaultValue: null,
146
- options: ["done", "go", "next", "search", "send", "none", "previous", "default", "emergency-call", "google", "join", "route", "yahoo"],
147
- formType: FORM_TYPES.flatArray,
148
- propType: PROP_TYPES.STRING
149
- },
150
- secureTextEntry: {
151
- group: GROUPS.basic,
152
- label: "Password Input?",
153
- description: "Hides the characters with a *, useful for passwords and other sensitive information.",
154
- editable: true,
155
- required: false,
156
- defaultValue: null,
157
- formType: FORM_TYPES.boolean,
158
- propType: PROP_TYPES.BOOLEAN
159
- },
160
- selectionColor: {
161
- group: GROUPS.advanced,
162
- label: "Selection Color",
163
- description: "Color of the highlighted portion when selecting.",
164
- editable: true,
165
- required: false,
166
- defaultValue: null,
167
- formType: FORM_TYPES.color,
168
- propType: PROP_TYPES.STRING
169
- },
170
- selectTextOnFocus: {
171
- group: GROUPS.advanced,
172
- label: "Select Text on Focus",
173
- description: "If true, all the text will automatically be selected on focus",
174
- editable: true,
175
- required: false,
176
- defaultValue: null,
177
- formType: FORM_TYPES.boolean,
178
- propType: PROP_TYPES.BOOLEAN
179
- },
180
- textAlignVertical: {
181
- group: GROUPS.advanced,
182
- label: "Aligns text on the vertical axis",
183
- description: "Move the text around in the given component.",
184
- options: ["auto", "top", "bottom", "center"],
185
- editable: true,
186
- required: false,
187
- defaultValue: "top",
188
- formType: FORM_TYPES.flatArray,
189
- propType: PROP_TYPES.STRING
190
- }
191
- };
192
2
  export const SEED_DATA = {
193
3
  name: "Text Area",
194
4
  tag: "TextInput",
@@ -207,9 +17,194 @@ export const SEED_DATA = {
207
17
  borderRadius: 8
208
18
  },
209
19
  triggers: [Triggers.OnChangeText],
210
- props: { ...TEXT_AREA_PROPS,
211
- placeholder: { ...TEXT_AREA_PROPS.placeholder,
212
- defaultValue: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s."
20
+ props: {
21
+ allowFontScaling: {
22
+ group: GROUPS.advanced,
23
+ label: "Allow Font Scaling",
24
+ description: "Whether fonts should scale to respect Text Size in the user's accessibility settings. (Default: true)",
25
+ editable: true,
26
+ required: false,
27
+ defaultValue: null,
28
+ formType: FORM_TYPES.boolean,
29
+ propType: PROP_TYPES.BOOLEAN
30
+ },
31
+ autoCapitalize: {
32
+ group: GROUPS.advanced,
33
+ label: "Auto Capitalize",
34
+ description: "Can automatically capitalize sentences, words, and characters (Default: none).",
35
+ editable: true,
36
+ required: false,
37
+ defaultValue: null,
38
+ options: ["none", "sentences", "words", "characters"],
39
+ formType: FORM_TYPES.flatArray,
40
+ propType: PROP_TYPES.STRING
41
+ },
42
+ autoCorrect: {
43
+ group: GROUPS.advanced,
44
+ label: "Auto Correct",
45
+ description: "Enables auto correction",
46
+ editable: true,
47
+ required: false,
48
+ defaultValue: null,
49
+ formType: FORM_TYPES.boolean,
50
+ propType: PROP_TYPES.BOOLEAN
51
+ },
52
+ autoFocus: {
53
+ group: GROUPS.basic,
54
+ label: "Auto Focus",
55
+ description: "Focuses the input on load in and brings up the keyboard",
56
+ editable: true,
57
+ required: false,
58
+ defaultValue: null,
59
+ formType: FORM_TYPES.boolean,
60
+ propType: PROP_TYPES.BOOLEAN
61
+ },
62
+ caretHidden: {
63
+ group: GROUPS.advanced,
64
+ label: "Hide Caret",
65
+ description: "Hides the caret(the line small line underneath each showing where you're editing/typing",
66
+ editable: true,
67
+ required: false,
68
+ defaultValue: null,
69
+ formType: FORM_TYPES.boolean,
70
+ propType: PROP_TYPES.BOOLEAN
71
+ },
72
+ contextMenuHidden: {
73
+ group: GROUPS.advanced,
74
+ label: "Hide Context Menu",
75
+ description: "Hides the system context menu (Default: false)",
76
+ editable: true,
77
+ required: false,
78
+ defaultValue: null,
79
+ formType: FORM_TYPES.boolean,
80
+ propType: PROP_TYPES.BOOLEAN
81
+ },
82
+ editable: {
83
+ group: GROUPS.advanced,
84
+ label: "Editable",
85
+ description: "If false, the text is not editable",
86
+ editable: true,
87
+ required: false,
88
+ defaultValue: true,
89
+ formType: FORM_TYPES.boolean,
90
+ propType: PROP_TYPES.BOOLEAN
91
+ },
92
+ keyboardAppearance: {
93
+ group: GROUPS.advanced,
94
+ label: "Keyboard Appearance",
95
+ description: "Determines the color of the keyboard.(iOS Only)",
96
+ editable: true,
97
+ required: false,
98
+ defaultValue: null,
99
+ options: ["default", "light", "dark"],
100
+ formType: FORM_TYPES.flatArray,
101
+ propType: PROP_TYPES.STRING
102
+ },
103
+ keyboardType: {
104
+ group: GROUPS.advanced,
105
+ label: "Keyboard Type",
106
+ description: "Determines what keyboard is given to the user.",
107
+ editable: true,
108
+ required: false,
109
+ defaultValue: null,
110
+ options: ["default", "email-address", "numeric", "phone-pad", "ascii-capable", "numbers-and-punctuation", "url", "number-pad", "name-phone-pad", "decimal-pad", "twitter", "web-search", "visible-password"],
111
+ formType: FORM_TYPES.flatArray,
112
+ propType: PROP_TYPES.STRING
113
+ },
114
+ maxLength: {
115
+ group: GROUPS.basic,
116
+ label: "Max Length",
117
+ description: "Limits the input to a set number of characters.",
118
+ editable: true,
119
+ required: false,
120
+ defaultValue: null,
121
+ min: 0,
122
+ step: 1,
123
+ precision: 0,
124
+ formType: FORM_TYPES.number,
125
+ propType: PROP_TYPES.NUMBER
126
+ },
127
+ placeholder: {
128
+ group: GROUPS.data,
129
+ label: "Placeholder Text",
130
+ description: "The text that is shown on load when no value is available.",
131
+ editable: true,
132
+ required: false,
133
+ defaultValue: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.",
134
+ formType: FORM_TYPES.string,
135
+ propType: PROP_TYPES.STRING
136
+ },
137
+ placeholderTextColor: {
138
+ group: GROUPS.basic,
139
+ label: "Placeholder Text Color",
140
+ description: "The color of the placeholder text.",
141
+ editable: true,
142
+ required: false,
143
+ defaultValue: null,
144
+ formType: FORM_TYPES.color,
145
+ propType: PROP_TYPES.STRING
146
+ },
147
+ returnKeyLabel: {
148
+ group: GROUPS.advanced,
149
+ label: "Return Key Label",
150
+ description: "(Android Only) Sets the label on the return key (use this instead of rewturnKeyType)",
151
+ editable: true,
152
+ required: false,
153
+ defaultValue: null,
154
+ formType: FORM_TYPES.string,
155
+ propType: PROP_TYPES.STRING
156
+ },
157
+ returnKeyType: {
158
+ group: GROUPS.advanced,
159
+ label: "Return Key Type",
160
+ description: "Determines how the return key should look like",
161
+ editable: true,
162
+ required: false,
163
+ defaultValue: null,
164
+ options: ["done", "go", "next", "search", "send", "none", "previous", "default", "emergency-call", "google", "join", "route", "yahoo"],
165
+ formType: FORM_TYPES.flatArray,
166
+ propType: PROP_TYPES.STRING
167
+ },
168
+ secureTextEntry: {
169
+ group: GROUPS.basic,
170
+ label: "Password Input?",
171
+ description: "Hides the characters with a *, useful for passwords and other sensitive information.",
172
+ editable: true,
173
+ required: false,
174
+ defaultValue: null,
175
+ formType: FORM_TYPES.boolean,
176
+ propType: PROP_TYPES.BOOLEAN
177
+ },
178
+ selectionColor: {
179
+ group: GROUPS.advanced,
180
+ label: "Selection Color",
181
+ description: "Color of the highlighted portion when selecting.",
182
+ editable: true,
183
+ required: false,
184
+ defaultValue: null,
185
+ formType: FORM_TYPES.color,
186
+ propType: PROP_TYPES.STRING
187
+ },
188
+ selectTextOnFocus: {
189
+ group: GROUPS.advanced,
190
+ label: "Select Text on Focus",
191
+ description: "If true, all the text will automatically be selected on focus",
192
+ editable: true,
193
+ required: false,
194
+ defaultValue: null,
195
+ formType: FORM_TYPES.boolean,
196
+ propType: PROP_TYPES.BOOLEAN
197
+ },
198
+ textAlignVertical: {
199
+ group: GROUPS.advanced,
200
+ label: "Aligns text on the vertical axis",
201
+ description: "Move the text around in the given component.",
202
+ options: ["auto", "top", "bottom", "center"],
203
+ editable: true,
204
+ required: false,
205
+ defaultValue: "top",
206
+ formType: FORM_TYPES.flatArray,
207
+ propType: PROP_TYPES.STRING
213
208
  },
214
209
  multiline: {
215
210
  label: "Multiline",