@draftbit/core 46.4.4-cc754a.2 → 46.4.4-cd0423.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 (47) hide show
  1. package/lib/commonjs/components/Accordion/AccordionItem.js +25 -5
  2. package/lib/commonjs/components/DatePicker/DatePicker.js +25 -15
  3. package/lib/commonjs/components/DatePicker/{DatePickerComponent.web.js → DatePickerComponent.__web.js} +3 -0
  4. package/lib/commonjs/components/DatePicker/DatePickerComponent.js +2 -0
  5. package/lib/commonjs/mappings/DatePicker.js +20 -3
  6. package/lib/commonjs/mappings/TextArea.js +14 -3
  7. package/lib/commonjs/mappings/TextField.js +14 -4
  8. package/lib/commonjs/mappings/TextInput.js +14 -3
  9. package/lib/module/components/DatePicker/DatePicker.js +24 -15
  10. package/lib/module/components/DatePicker/{DatePickerComponent.web.js → DatePickerComponent.__web.js} +3 -0
  11. package/lib/module/components/DatePicker/DatePickerComponent.js +2 -0
  12. package/lib/module/constants.js +1 -0
  13. package/lib/module/mappings/DatePicker.js +21 -4
  14. package/lib/module/mappings/TextArea.js +15 -4
  15. package/lib/module/mappings/TextField.js +14 -4
  16. package/lib/module/mappings/TextInput.js +15 -4
  17. package/lib/typescript/src/components/DatePicker/DatePicker.d.ts +4 -0
  18. package/lib/typescript/src/components/DatePicker/DatePicker.d.ts.map +1 -1
  19. package/lib/typescript/src/components/DatePicker/{DatePickerComponent.web.d.ts → DatePickerComponent.__web.d.ts} +1 -1
  20. package/lib/typescript/src/components/DatePicker/{DatePickerComponent.web.d.ts.map → DatePickerComponent.__web.d.ts.map} +1 -1
  21. package/lib/typescript/src/components/DatePicker/DatePickerComponent.d.ts.map +1 -1
  22. package/lib/typescript/src/components/DatePicker/DatePickerComponentType.d.ts +1 -0
  23. package/lib/typescript/src/components/DatePicker/DatePickerComponentType.d.ts.map +1 -1
  24. package/lib/typescript/src/mappings/DatePicker.d.ts +42 -0
  25. package/lib/typescript/src/mappings/DatePicker.d.ts.map +1 -1
  26. package/lib/typescript/src/mappings/TextArea.d.ts +21 -1
  27. package/lib/typescript/src/mappings/TextArea.d.ts.map +1 -1
  28. package/lib/typescript/src/mappings/TextField.d.ts +22 -2
  29. package/lib/typescript/src/mappings/TextField.d.ts.map +1 -1
  30. package/lib/typescript/src/mappings/TextInput.d.ts +21 -1
  31. package/lib/typescript/src/mappings/TextInput.d.ts.map +1 -1
  32. package/package.json +3 -3
  33. package/src/components/DatePicker/DatePicker.js +20 -13
  34. package/src/components/DatePicker/DatePicker.tsx +29 -13
  35. package/src/components/DatePicker/{DatePickerComponent.web.js → DatePickerComponent.__web.js} +2 -2
  36. package/src/components/DatePicker/{DatePickerComponent.web.tsx → DatePickerComponent.__web.tsx} +3 -0
  37. package/src/components/DatePicker/DatePickerComponent.js +2 -2
  38. package/src/components/DatePicker/DatePickerComponent.tsx +2 -0
  39. package/src/components/DatePicker/DatePickerComponentType.ts +1 -0
  40. package/src/mappings/DatePicker.js +28 -4
  41. package/src/mappings/DatePicker.ts +30 -3
  42. package/src/mappings/TextArea.js +15 -4
  43. package/src/mappings/TextArea.ts +15 -3
  44. package/src/mappings/TextField.js +14 -4
  45. package/src/mappings/TextField.ts +14 -4
  46. package/src/mappings/TextInput.js +15 -4
  47. package/src/mappings/TextInput.ts +15 -3
@@ -21,8 +21,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
21
 
22
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
23
 
24
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
-
26
24
  const AccordionItem = _ref => {
27
25
  let {
28
26
  Icon,
@@ -37,9 +35,10 @@ const AccordionItem = _ref => {
37
35
  textStyles,
38
36
  viewStyles
39
37
  } = (0, _utilities.extractStyles)(style);
40
- return /*#__PURE__*/React.createElement(_reactNative.Pressable, _extends({
41
- style: [styles.container, viewStyles]
42
- }, rest), /*#__PURE__*/React.createElement(_reactNative.View, {
38
+ return /*#__PURE__*/React.createElement(_reactNative.Pressable, {
39
+ style: [styles.container, viewStyles],
40
+ ...rest
41
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
43
42
  style: styles.row
44
43
  }, icon ? /*#__PURE__*/React.createElement(Icon, {
45
44
  name: icon,
@@ -74,4 +73,25 @@ const styles = _reactNative.StyleSheet.create({
74
73
 
75
74
  var _default = (0, _theming.withTheme)(AccordionItem);
76
75
 
76
+ exports.default = _default;StyleSheet.create({
77
+ container: {
78
+ padding: 8
79
+ },
80
+ row: {
81
+ flexDirection: "row",
82
+ alignItems: "center",
83
+ paddingLeft: 8
84
+ },
85
+ item: {
86
+ marginVertical: 6,
87
+ paddingLeft: 8
88
+ },
89
+ content: {
90
+ flex: 1,
91
+ justifyContent: "center"
92
+ }
93
+ });
94
+
95
+ var _default = (0, _theming.withTheme)(AccordionItem);
96
+
77
97
  exports.default = _default;
@@ -21,6 +21,8 @@ var _Touchable = _interopRequireDefault(require("../Touchable"));
21
21
 
22
22
  var _DatePickerComponent = _interopRequireDefault(require("./DatePickerComponent"));
23
23
 
24
+ var _utilities = require("../../utilities");
25
+
24
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
27
 
26
28
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -57,7 +59,11 @@ const DatePicker = _ref => {
57
59
  rightIconName,
58
60
  leftIconMode = "inset",
59
61
  label,
62
+ labelSize,
63
+ labelColor,
60
64
  placeholder,
65
+ borderColor: inputBorderColor,
66
+ borderColorActive: inputBorderColorActive,
61
67
  ...props
62
68
  } = _ref;
63
69
  const [value, setValue] = React.useState(date || defaultValue);
@@ -74,6 +80,9 @@ const DatePicker = _ref => {
74
80
  measured: false,
75
81
  width: 0
76
82
  });
83
+ const {
84
+ textStyles
85
+ } = (0, _utilities.extractStyles)(style);
77
86
 
78
87
  const getValidDate = () => {
79
88
  if (!value) {
@@ -175,8 +184,8 @@ const DatePicker = _ref => {
175
184
 
176
185
  const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);
177
186
  const OUTLINE_MINIMIZED_LABEL_Y_OFFSET = -(16 * 0.5 + 4);
178
- const MAXIMIZED_LABEL_FONT_SIZE = typography.subtitle1.fontSize;
179
- const MINIMIZED_LABEL_FONT_SIZE = typography.caption.fontSize;
187
+ const MAXIMIZED_LABEL_FONT_SIZE = (textStyles === null || textStyles === void 0 ? void 0 : textStyles.fontSize) || typography.subtitle1.fontSize;
188
+ const MINIMIZED_LABEL_FONT_SIZE = labelSize ? labelSize : typography.caption.fontSize;
180
189
  const hasActiveOutline = focused;
181
190
  let inputTextColor, activeColor, underlineColor, borderColor, placeholderColor, containerStyle, backgroundColor, inputStyle;
182
191
  inputTextColor = colors.strong;
@@ -188,9 +197,9 @@ const DatePicker = _ref => {
188
197
  underlineColor = "transparent";
189
198
  backgroundColor = colors.divider;
190
199
  } else {
191
- activeColor = colors.primary;
192
- placeholderColor = borderColor = colors.light;
193
- underlineColor = colors.light;
200
+ activeColor = inputBorderColorActive || colors.primary;
201
+ placeholderColor = borderColor = inputBorderColor || colors.light;
202
+ underlineColor = inputBorderColor || colors.light;
194
203
  backgroundColor = colors.background;
195
204
  }
196
205
 
@@ -212,7 +221,8 @@ const DatePicker = _ref => {
212
221
  borderTopLeftRadius: roundness,
213
222
  borderTopRightRadius: roundness,
214
223
  paddingBottom: 12,
215
- marginTop: 16
224
+ marginTop: 16,
225
+ backgroundColor
216
226
  };
217
227
  } else {
218
228
  containerStyle = {
@@ -250,6 +260,7 @@ const DatePicker = _ref => {
250
260
  };
251
261
  const labelStyle = { ...typography.subtitle1,
252
262
  top: type === "solid" ? 16 : 0,
263
+ fontFamily: textStyles === null || textStyles === void 0 ? void 0 : textStyles.fontFamily,
253
264
  left: leftIconName && leftIconMode === "inset" ? ICON_SIZE + (type === "solid" ? 16 : 12) : 0,
254
265
  transform: [{
255
266
  // Move label to top
@@ -273,23 +284,21 @@ const DatePicker = _ref => {
273
284
  };
274
285
  const inputStyles = [styles.input, inputStyle, type === "solid" ? {
275
286
  marginHorizontal: 12
276
- } : {}]; // const render = (props) => <NativeTextInput {...props} />;
287
+ } : {}, textStyles]; // const render = (props) => <NativeTextInput {...props} />;
277
288
 
278
289
  return /*#__PURE__*/React.createElement(_reactNative.View, {
279
- style: [styles.container, style]
290
+ style: [styles.container]
280
291
  }, /*#__PURE__*/React.createElement(_Touchable.default, {
281
292
  disabled: disabled,
282
293
  onPress: toggleVisibility
283
294
  }, /*#__PURE__*/React.createElement(_reactNative.View, {
284
295
  pointerEvents: "none"
285
296
  }, /*#__PURE__*/React.createElement(_reactNative.View, {
286
- style: [styles.container, style]
297
+ style: [styles.container]
287
298
  }, leftIconName && leftIconMode === "outset" ? /*#__PURE__*/React.createElement(Icon, _extends({}, leftIconProps, {
288
299
  style: leftIconStyle
289
300
  })) : null, /*#__PURE__*/React.createElement(_reactNative.View, {
290
- style: [containerStyle, style ? {
291
- height: style.height
292
- } : {}]
301
+ style: [containerStyle, style]
293
302
  }, type === "underline" ?
294
303
  /*#__PURE__*/
295
304
  // When type === 'flat', render an underline
@@ -319,7 +328,7 @@ const DatePicker = _ref => {
319
328
  style: [styles.placeholder, type === "solid" ? {
320
329
  paddingHorizontal: 12
321
330
  } : {}, labelStyle, {
322
- color: colors.light,
331
+ color: labelColor || colors.light,
323
332
  opacity: labeled.interpolate({
324
333
  inputRange: [0, 1],
325
334
  outputRange: [hasActiveOutline ? 1 : 0, 0]
@@ -330,7 +339,7 @@ const DatePicker = _ref => {
330
339
  style: [styles.placeholder, type === "solid" ? {
331
340
  paddingHorizontal: 12
332
341
  } : {}, labelStyle, {
333
- color: placeholderColor,
342
+ color: labelColor || placeholder,
334
343
  opacity: hasActiveOutline ? labeled : 1
335
344
  }],
336
345
  numberOfLines: 1
@@ -347,7 +356,7 @@ const DatePicker = _ref => {
347
356
  onFocus: _handleFocus,
348
357
  onBlur: _handleBlur,
349
358
  underlineColorAndroid: "transparent",
350
- style: inputStyles
359
+ style: [inputStyles, style]
351
360
  }, props))), rightIconName ? /*#__PURE__*/React.createElement(Icon, {
352
361
  name: rightIconName,
353
362
  size: ICON_SIZE,
@@ -371,6 +380,7 @@ const DatePicker = _ref => {
371
380
  }, /*#__PURE__*/React.createElement(_DatePickerComponent.default, {
372
381
  value: getValidDate(),
373
382
  mode: mode,
383
+ style: inputStyles,
374
384
  isVisible: pickerVisible,
375
385
  toggleVisibility: toggleVisibility,
376
386
  onChange: (_event, data) => {
@@ -24,6 +24,7 @@ const DatePickerComponent = _ref => {
24
24
  value,
25
25
  onChange,
26
26
  mode,
27
+ style,
27
28
  toggleVisibility,
28
29
  isVisible,
29
30
  theme
@@ -52,6 +53,8 @@ const DatePickerComponent = _ref => {
52
53
  },
53
54
  onClose: () => toggleVisibility(),
54
55
  variant: "dialog",
56
+ inputVariant: "outlined",
57
+ style: style,
55
58
  TextFieldComponent: () => null
56
59
  })));
57
60
  };
@@ -19,6 +19,7 @@ const DatePickerComponent = _ref => {
19
19
  let {
20
20
  value,
21
21
  onChange,
22
+ style,
22
23
  mode,
23
24
  toggleVisibility
24
25
  } = _ref;
@@ -35,6 +36,7 @@ const DatePickerComponent = _ref => {
35
36
  onChange(null, data);
36
37
  }
37
38
  }) : /*#__PURE__*/_react.default.createElement(_datetimepicker.default, {
39
+ style: style,
38
40
  value: value,
39
41
  mode: mode,
40
42
  onChange: onChange,
@@ -18,6 +18,16 @@ const SEED_DATA_PROPS = {
18
18
  required: true,
19
19
  group: _types.GROUPS.data
20
20
  },
21
+ labelSize: (0, _types.createNumberProp)({
22
+ label: "Label Font Size",
23
+ group: _types.GROUPS.basic,
24
+ description: "Label font size",
25
+ editable: true,
26
+ defaultValue: null
27
+ }),
28
+ labelColor: (0, _types.createColorProp)({
29
+ label: "Label Color"
30
+ }),
21
31
  mode: {
22
32
  label: "Mode",
23
33
  description: "Choose between date, time and datetime",
@@ -29,6 +39,12 @@ const SEED_DATA_PROPS = {
29
39
  options: ["date", "time", "datetime"],
30
40
  group: _types.GROUPS.basic
31
41
  },
42
+ borderColor: (0, _types.createColorProp)({
43
+ label: "Default Border Color"
44
+ }),
45
+ borderColorActive: (0, _types.createColorProp)({
46
+ label: "Active Border Color"
47
+ }),
32
48
  format: {
33
49
  label: "Format",
34
50
  description: "Create an output format for the date.",
@@ -37,7 +53,7 @@ const SEED_DATA_PROPS = {
37
53
  formType: _types.FORM_TYPES.string,
38
54
  propType: _types.PROP_TYPES.STRING,
39
55
  defaultValue: null,
40
- group: _types.GROUPS.basic
56
+ group: _types.GROUPS.data
41
57
  },
42
58
  assistiveText: {
43
59
  label: "Assistive text",
@@ -47,7 +63,7 @@ const SEED_DATA_PROPS = {
47
63
  defaultValue: null,
48
64
  editable: true,
49
65
  required: false,
50
- group: _types.GROUPS.basic
66
+ group: _types.GROUPS.data
51
67
  },
52
68
  // locale: {
53
69
  // label: "Locale",
@@ -89,7 +105,7 @@ const SEED_DATA_PROPS = {
89
105
  defaultValue: false,
90
106
  editable: true,
91
107
  required: false,
92
- group: _types.GROUPS.basic
108
+ group: _types.GROUPS.data
93
109
  },
94
110
  // error: {
95
111
  // label: "Error",
@@ -145,6 +161,7 @@ const SEED_DATA = [{
145
161
  category: _types.COMPONENT_TYPES.input,
146
162
  layout: null,
147
163
  triggers: [_types.Triggers.OnDateChange],
164
+ StylesPanelSections: [_types.StylesPanelSections.Typography, _types.StylesPanelSections.Background, _types.StylesPanelSections.Borders, _types.StylesPanelSections.MarginsAndPaddings, _types.StylesPanelSections.Position, _types.StylesPanelSections.Size],
148
165
  props: { ...SEED_DATA_PROPS,
149
166
  type: {
150
167
  label: "Appearance",
@@ -67,6 +67,17 @@ const SEED_DATA = {
67
67
  formType: _types.FORM_TYPES.boolean,
68
68
  propType: _types.PROP_TYPES.BOOLEAN
69
69
  },
70
+ blurOnSubmit: {
71
+ group: _types.GROUPS.advanced,
72
+ label: "Blur On Submit",
73
+ description: "If true, the text field will blur when submitted. ",
74
+ editable: true,
75
+ required: false,
76
+ defaultValue: null,
77
+ formType: _types.FORM_TYPES.boolean,
78
+ propType: _types.PROP_TYPES.BOOLEAN
79
+ },
80
+ disabled: (0, _types.createDisabledProp)(),
70
81
  caretHidden: {
71
82
  group: _types.GROUPS.advanced,
72
83
  label: "Hide Caret",
@@ -88,12 +99,12 @@ const SEED_DATA = {
88
99
  propType: _types.PROP_TYPES.BOOLEAN
89
100
  },
90
101
  editable: {
91
- group: _types.GROUPS.advanced,
92
- label: "Editable",
102
+ group: _types.GROUPS.data,
103
+ label: "Editable?",
93
104
  description: "If false, the text is not editable",
94
105
  editable: true,
95
106
  required: false,
96
- defaultValue: true,
107
+ defaultValue: null,
97
108
  formType: _types.FORM_TYPES.boolean,
98
109
  propType: _types.PROP_TYPES.BOOLEAN
99
110
  },
@@ -70,7 +70,7 @@ const SEED_DATA_PROPS = {
70
70
  propType: _types.PROP_TYPES.BOOLEAN
71
71
  },
72
72
  disabled: {
73
- group: _types.GROUPS.basic,
73
+ group: _types.GROUPS.data,
74
74
  label: "Disabled",
75
75
  description: "Whether the input should be disabled. Will prevent input and show a greyed out state.",
76
76
  formType: _types.FORM_TYPES.boolean,
@@ -80,12 +80,22 @@ const SEED_DATA_PROPS = {
80
80
  required: false
81
81
  },
82
82
  editable: {
83
- group: _types.GROUPS.advanced,
84
- label: "Editable",
83
+ group: _types.GROUPS.data,
84
+ label: "Editable?",
85
85
  description: "If false, the text is not editable",
86
86
  editable: true,
87
87
  required: false,
88
- defaultValue: true,
88
+ defaultValue: null,
89
+ formType: _types.FORM_TYPES.boolean,
90
+ propType: _types.PROP_TYPES.BOOLEAN
91
+ },
92
+ blurOnSubmit: {
93
+ group: _types.GROUPS.advanced,
94
+ label: "Blur On Submit",
95
+ description: "If true, the text field will blur when submitted. ",
96
+ editable: true,
97
+ required: false,
98
+ defaultValue: null,
89
99
  formType: _types.FORM_TYPES.boolean,
90
100
  propType: _types.PROP_TYPES.BOOLEAN
91
101
  },
@@ -149,12 +149,12 @@ const SEED_DATA = [{
149
149
  propType: _types.PROP_TYPES.BOOLEAN
150
150
  },
151
151
  editable: {
152
- group: _types.GROUPS.advanced,
153
- label: "Editable",
152
+ group: _types.GROUPS.data,
153
+ label: "Editable?",
154
154
  description: "If false, the text is not editable",
155
155
  editable: true,
156
156
  required: false,
157
- defaultValue: true,
157
+ defaultValue: null,
158
158
  formType: _types.FORM_TYPES.boolean,
159
159
  propType: _types.PROP_TYPES.BOOLEAN
160
160
  },
@@ -223,6 +223,16 @@ const SEED_DATA = [{
223
223
  formType: _types.FORM_TYPES.string,
224
224
  propType: _types.PROP_TYPES.STRING
225
225
  },
226
+ blurOnSubmit: {
227
+ group: _types.GROUPS.advanced,
228
+ label: "Blur On Submit",
229
+ description: "If true, the text field will blur when submitted. ",
230
+ editable: true,
231
+ required: false,
232
+ defaultValue: null,
233
+ formType: _types.FORM_TYPES.boolean,
234
+ propType: _types.PROP_TYPES.BOOLEAN
235
+ },
226
236
  returnKeyType: {
227
237
  group: _types.GROUPS.advanced,
228
238
  label: "Return Key Type",
@@ -288,6 +298,7 @@ const SEED_DATA = [{
288
298
  formType: _types.FORM_TYPES.number,
289
299
  propType: _types.PROP_TYPES.NUMBER
290
300
  },
301
+ disabled: (0, _types.createDisabledProp)(),
291
302
  scrollEnabled: {
292
303
  group: _types.GROUPS.basic,
293
304
  label: "Scroll Enabled",
@@ -8,6 +8,7 @@ import { withTheme } from "../../theming";
8
8
  import Portal from "../Portal/Portal";
9
9
  import Touchable from "../Touchable";
10
10
  import DateTimePicker from "./DatePickerComponent";
11
+ import { extractStyles } from "../../utilities";
11
12
  const AnimatedText = Animated.createAnimatedComponent(Text);
12
13
  const FOCUS_ANIMATION_DURATION = 150;
13
14
  const BLUR_ANIMATION_DURATION = 180;
@@ -35,7 +36,11 @@ const DatePicker = _ref => {
35
36
  rightIconName,
36
37
  leftIconMode = "inset",
37
38
  label,
39
+ labelSize,
40
+ labelColor,
38
41
  placeholder,
42
+ borderColor: inputBorderColor,
43
+ borderColorActive: inputBorderColorActive,
39
44
  ...props
40
45
  } = _ref;
41
46
  const [value, setValue] = React.useState(date || defaultValue);
@@ -52,6 +57,9 @@ const DatePicker = _ref => {
52
57
  measured: false,
53
58
  width: 0
54
59
  });
60
+ const {
61
+ textStyles
62
+ } = extractStyles(style);
55
63
 
56
64
  const getValidDate = () => {
57
65
  if (!value) {
@@ -153,8 +161,8 @@ const DatePicker = _ref => {
153
161
 
154
162
  const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);
155
163
  const OUTLINE_MINIMIZED_LABEL_Y_OFFSET = -(16 * 0.5 + 4);
156
- const MAXIMIZED_LABEL_FONT_SIZE = typography.subtitle1.fontSize;
157
- const MINIMIZED_LABEL_FONT_SIZE = typography.caption.fontSize;
164
+ const MAXIMIZED_LABEL_FONT_SIZE = (textStyles === null || textStyles === void 0 ? void 0 : textStyles.fontSize) || typography.subtitle1.fontSize;
165
+ const MINIMIZED_LABEL_FONT_SIZE = labelSize ? labelSize : typography.caption.fontSize;
158
166
  const hasActiveOutline = focused;
159
167
  let inputTextColor, activeColor, underlineColor, borderColor, placeholderColor, containerStyle, backgroundColor, inputStyle;
160
168
  inputTextColor = colors.strong;
@@ -166,9 +174,9 @@ const DatePicker = _ref => {
166
174
  underlineColor = "transparent";
167
175
  backgroundColor = colors.divider;
168
176
  } else {
169
- activeColor = colors.primary;
170
- placeholderColor = borderColor = colors.light;
171
- underlineColor = colors.light;
177
+ activeColor = inputBorderColorActive || colors.primary;
178
+ placeholderColor = borderColor = inputBorderColor || colors.light;
179
+ underlineColor = inputBorderColor || colors.light;
172
180
  backgroundColor = colors.background;
173
181
  }
174
182
 
@@ -190,7 +198,8 @@ const DatePicker = _ref => {
190
198
  borderTopLeftRadius: roundness,
191
199
  borderTopRightRadius: roundness,
192
200
  paddingBottom: 12,
193
- marginTop: 16
201
+ marginTop: 16,
202
+ backgroundColor
194
203
  };
195
204
  } else {
196
205
  containerStyle = {
@@ -228,6 +237,7 @@ const DatePicker = _ref => {
228
237
  };
229
238
  const labelStyle = { ...typography.subtitle1,
230
239
  top: type === "solid" ? 16 : 0,
240
+ fontFamily: textStyles === null || textStyles === void 0 ? void 0 : textStyles.fontFamily,
231
241
  left: leftIconName && leftIconMode === "inset" ? ICON_SIZE + (type === "solid" ? 16 : 12) : 0,
232
242
  transform: [{
233
243
  // Move label to top
@@ -251,23 +261,21 @@ const DatePicker = _ref => {
251
261
  };
252
262
  const inputStyles = [styles.input, inputStyle, type === "solid" ? {
253
263
  marginHorizontal: 12
254
- } : {}]; // const render = (props) => <NativeTextInput {...props} />;
264
+ } : {}, textStyles]; // const render = (props) => <NativeTextInput {...props} />;
255
265
 
256
266
  return /*#__PURE__*/React.createElement(View, {
257
- style: [styles.container, style]
267
+ style: [styles.container]
258
268
  }, /*#__PURE__*/React.createElement(Touchable, {
259
269
  disabled: disabled,
260
270
  onPress: toggleVisibility
261
271
  }, /*#__PURE__*/React.createElement(View, {
262
272
  pointerEvents: "none"
263
273
  }, /*#__PURE__*/React.createElement(View, {
264
- style: [styles.container, style]
274
+ style: [styles.container]
265
275
  }, leftIconName && leftIconMode === "outset" ? /*#__PURE__*/React.createElement(Icon, _extends({}, leftIconProps, {
266
276
  style: leftIconStyle
267
277
  })) : null, /*#__PURE__*/React.createElement(View, {
268
- style: [containerStyle, style ? {
269
- height: style.height
270
- } : {}]
278
+ style: [containerStyle, style]
271
279
  }, type === "underline" ?
272
280
  /*#__PURE__*/
273
281
  // When type === 'flat', render an underline
@@ -297,7 +305,7 @@ const DatePicker = _ref => {
297
305
  style: [styles.placeholder, type === "solid" ? {
298
306
  paddingHorizontal: 12
299
307
  } : {}, labelStyle, {
300
- color: colors.light,
308
+ color: labelColor || colors.light,
301
309
  opacity: labeled.interpolate({
302
310
  inputRange: [0, 1],
303
311
  outputRange: [hasActiveOutline ? 1 : 0, 0]
@@ -308,7 +316,7 @@ const DatePicker = _ref => {
308
316
  style: [styles.placeholder, type === "solid" ? {
309
317
  paddingHorizontal: 12
310
318
  } : {}, labelStyle, {
311
- color: placeholderColor,
319
+ color: labelColor || placeholder,
312
320
  opacity: hasActiveOutline ? labeled : 1
313
321
  }],
314
322
  numberOfLines: 1
@@ -325,7 +333,7 @@ const DatePicker = _ref => {
325
333
  onFocus: _handleFocus,
326
334
  onBlur: _handleBlur,
327
335
  underlineColorAndroid: "transparent",
328
- style: inputStyles
336
+ style: [inputStyles, style]
329
337
  }, props))), rightIconName ? /*#__PURE__*/React.createElement(Icon, {
330
338
  name: rightIconName,
331
339
  size: ICON_SIZE,
@@ -349,6 +357,7 @@ const DatePicker = _ref => {
349
357
  }, /*#__PURE__*/React.createElement(DateTimePicker, {
350
358
  value: getValidDate(),
351
359
  mode: mode,
360
+ style: inputStyles,
352
361
  isVisible: pickerVisible,
353
362
  toggleVisibility: toggleVisibility,
354
363
  onChange: (_event, data) => {
@@ -10,6 +10,7 @@ const DatePickerComponent = _ref => {
10
10
  value,
11
11
  onChange,
12
12
  mode,
13
+ style,
13
14
  toggleVisibility,
14
15
  isVisible,
15
16
  theme
@@ -38,6 +39,8 @@ const DatePickerComponent = _ref => {
38
39
  },
39
40
  onClose: () => toggleVisibility(),
40
41
  variant: "dialog",
42
+ inputVariant: "outlined",
43
+ style: style,
41
44
  TextFieldComponent: () => null
42
45
  })));
43
46
  };
@@ -7,6 +7,7 @@ const DatePickerComponent = _ref => {
7
7
  let {
8
8
  value,
9
9
  onChange,
10
+ style,
10
11
  mode,
11
12
  toggleVisibility
12
13
  } = _ref;
@@ -23,6 +24,7 @@ const DatePickerComponent = _ref => {
23
24
  onChange(null, data);
24
25
  }
25
26
  }) : /*#__PURE__*/React.createElement(DateTimePicker, {
27
+ style: style,
26
28
  value: value,
27
29
  mode: mode,
28
30
  onChange: onChange,
@@ -5,4 +5,5 @@ const DEFAULT_STATUSBAR_HEIGHT_EXPO = expo !== null && expo !== void 0 && expo.C
5
5
  export const APPROX_STATUSBAR_HEIGHT = Platform.select({
6
6
  android: DEFAULT_STATUSBAR_HEIGHT_EXPO,
7
7
  ios: Platform.Version < 11 ? DEFAULT_STATUSBAR_HEIGHT_EXPO : 0
8
+ });PO : 0
8
9
  });
@@ -1,4 +1,4 @@
1
- import { COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, GROUPS, Triggers } from "@draftbit/types";
1
+ import { COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, GROUPS, Triggers, StylesPanelSections, createNumberProp, createColorProp } from "@draftbit/types";
2
2
  const SEED_DATA_PROPS = {
3
3
  label: {
4
4
  label: "Label",
@@ -10,6 +10,16 @@ const SEED_DATA_PROPS = {
10
10
  required: true,
11
11
  group: GROUPS.data
12
12
  },
13
+ labelSize: createNumberProp({
14
+ label: "Label Font Size",
15
+ group: GROUPS.basic,
16
+ description: "Label font size",
17
+ editable: true,
18
+ defaultValue: null
19
+ }),
20
+ labelColor: createColorProp({
21
+ label: "Label Color"
22
+ }),
13
23
  mode: {
14
24
  label: "Mode",
15
25
  description: "Choose between date, time and datetime",
@@ -21,6 +31,12 @@ const SEED_DATA_PROPS = {
21
31
  options: ["date", "time", "datetime"],
22
32
  group: GROUPS.basic
23
33
  },
34
+ borderColor: createColorProp({
35
+ label: "Default Border Color"
36
+ }),
37
+ borderColorActive: createColorProp({
38
+ label: "Active Border Color"
39
+ }),
24
40
  format: {
25
41
  label: "Format",
26
42
  description: "Create an output format for the date.",
@@ -29,7 +45,7 @@ const SEED_DATA_PROPS = {
29
45
  formType: FORM_TYPES.string,
30
46
  propType: PROP_TYPES.STRING,
31
47
  defaultValue: null,
32
- group: GROUPS.basic
48
+ group: GROUPS.data
33
49
  },
34
50
  assistiveText: {
35
51
  label: "Assistive text",
@@ -39,7 +55,7 @@ const SEED_DATA_PROPS = {
39
55
  defaultValue: null,
40
56
  editable: true,
41
57
  required: false,
42
- group: GROUPS.basic
58
+ group: GROUPS.data
43
59
  },
44
60
  // locale: {
45
61
  // label: "Locale",
@@ -81,7 +97,7 @@ const SEED_DATA_PROPS = {
81
97
  defaultValue: false,
82
98
  editable: true,
83
99
  required: false,
84
- group: GROUPS.basic
100
+ group: GROUPS.data
85
101
  },
86
102
  // error: {
87
103
  // label: "Error",
@@ -137,6 +153,7 @@ export const SEED_DATA = [{
137
153
  category: COMPONENT_TYPES.input,
138
154
  layout: null,
139
155
  triggers: [Triggers.OnDateChange],
156
+ StylesPanelSections: [StylesPanelSections.Typography, StylesPanelSections.Background, StylesPanelSections.Borders, StylesPanelSections.MarginsAndPaddings, StylesPanelSections.Position, StylesPanelSections.Size],
140
157
  props: { ...SEED_DATA_PROPS,
141
158
  type: {
142
159
  label: "Appearance",
@@ -1,4 +1,4 @@
1
- import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, Triggers } from "@draftbit/types";
1
+ import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, FIELD_NAME, Triggers, createDisabledProp } from "@draftbit/types";
2
2
  export const SEED_DATA = {
3
3
  name: "Text Area",
4
4
  tag: "TextInput",
@@ -59,6 +59,17 @@ export const SEED_DATA = {
59
59
  formType: FORM_TYPES.boolean,
60
60
  propType: PROP_TYPES.BOOLEAN
61
61
  },
62
+ blurOnSubmit: {
63
+ group: GROUPS.advanced,
64
+ label: "Blur On Submit",
65
+ description: "If true, the text field will blur when submitted. ",
66
+ editable: true,
67
+ required: false,
68
+ defaultValue: null,
69
+ formType: FORM_TYPES.boolean,
70
+ propType: PROP_TYPES.BOOLEAN
71
+ },
72
+ disabled: createDisabledProp(),
62
73
  caretHidden: {
63
74
  group: GROUPS.advanced,
64
75
  label: "Hide Caret",
@@ -80,12 +91,12 @@ export const SEED_DATA = {
80
91
  propType: PROP_TYPES.BOOLEAN
81
92
  },
82
93
  editable: {
83
- group: GROUPS.advanced,
84
- label: "Editable",
94
+ group: GROUPS.data,
95
+ label: "Editable?",
85
96
  description: "If false, the text is not editable",
86
97
  editable: true,
87
98
  required: false,
88
- defaultValue: true,
99
+ defaultValue: null,
89
100
  formType: FORM_TYPES.boolean,
90
101
  propType: PROP_TYPES.BOOLEAN
91
102
  },