@draftbit/core 46.10.3-177666.2 → 46.10.3-17bcb4.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 (133) hide show
  1. package/lib/commonjs/components/AvatarEdit.js +15 -4
  2. package/lib/commonjs/components/Banner.js +23 -4
  3. package/lib/commonjs/components/Checkbox/Checkbox.js +3 -4
  4. package/lib/commonjs/components/Checkbox/CheckboxGroup.js +17 -2
  5. package/lib/commonjs/components/CircularProgress.js +26 -8
  6. package/lib/commonjs/components/DeprecatedButton.js +20 -3
  7. package/lib/commonjs/components/DeprecatedCardWrapper.js +54 -0
  8. package/lib/commonjs/components/DeprecatedFAB.js +157 -0
  9. package/lib/commonjs/components/Elevation.js +14 -2
  10. package/lib/commonjs/components/FormRow.js +16 -2
  11. package/lib/commonjs/components/IconButton.js +19 -4
  12. package/lib/commonjs/components/Layout.js +40 -19
  13. package/lib/commonjs/components/NumberInput.js +12 -3
  14. package/lib/commonjs/components/Picker/Picker.js +9 -6
  15. package/lib/commonjs/components/Picker/PickerComponent.web.js +20 -3
  16. package/lib/commonjs/components/Portal/Portal.js +27 -3
  17. package/lib/commonjs/components/Portal/PortalHost.js +44 -15
  18. package/lib/commonjs/components/Pressable.js +15 -2
  19. package/lib/commonjs/components/ProgressIndicator.js +55 -0
  20. package/lib/commonjs/components/RadioButton/RadioButton.js +13 -2
  21. package/lib/commonjs/components/RadioButton/RadioButtonGroup.js +15 -2
  22. package/lib/commonjs/components/RadioButton/context.js +1 -1
  23. package/lib/commonjs/components/ResizeMode.js +5 -0
  24. package/lib/commonjs/components/ScreenContainer.js +24 -6
  25. package/lib/commonjs/components/Slider.js +21 -4
  26. package/lib/commonjs/components/StarRating.js +23 -4
  27. package/lib/commonjs/components/StepIndicator.js +57 -18
  28. package/lib/commonjs/components/Surface.js +14 -2
  29. package/lib/commonjs/components/Switch.js +19 -10
  30. package/lib/commonjs/components/ToggleButton.js +15 -2
  31. package/lib/commonjs/constants.js +1 -1
  32. package/lib/commonjs/hooks.js +1 -2
  33. package/lib/commonjs/mappings/CardBlock.js +126 -0
  34. package/lib/commonjs/mappings/CardContainer.js +108 -0
  35. package/lib/commonjs/mappings/CardContainerRating.js +130 -0
  36. package/lib/commonjs/mappings/CardContainerShortImage.js +124 -0
  37. package/lib/commonjs/mappings/CardInline.js +59 -0
  38. package/lib/commonjs/mappings/HeaderLarge.js +34 -0
  39. package/lib/commonjs/mappings/HeaderMedium.js +60 -0
  40. package/lib/commonjs/mappings/HeaderOverline.js +60 -0
  41. package/lib/commonjs/mappings/ProgressIndicator.js +188 -0
  42. package/lib/commonjs/styles/overlay.js +1 -3
  43. package/lib/module/components/Accordion/AccordionItem.js +4 -25
  44. package/lib/module/components/AnimatedCircularProgress.js +13 -1
  45. package/lib/module/components/AvatarEdit.js +15 -4
  46. package/lib/module/components/Banner.js +25 -4
  47. package/lib/module/components/Button.js +33 -10
  48. package/lib/module/components/Checkbox/CheckboxGroup.js +16 -2
  49. package/lib/module/components/Checkbox/CheckboxGroupRow.js +24 -5
  50. package/lib/module/components/Checkbox/CheckboxRow.js +24 -6
  51. package/lib/module/components/DatePicker/DatePicker.js +27 -13
  52. package/lib/module/components/DeprecatedCardWrapper.js +32 -0
  53. package/lib/module/components/DeprecatedFAB.js +167 -0
  54. package/lib/module/components/Divider.js +18 -1
  55. package/lib/module/components/Layout.js +42 -21
  56. package/lib/module/components/Picker/PickerComponent.android.js +21 -3
  57. package/lib/module/components/Portal/PortalConsumer.js +22 -7
  58. package/lib/module/components/ProgressIndicator.js +45 -0
  59. package/lib/module/components/RadioButton/RadioButton.js +13 -1
  60. package/lib/module/components/RadioButton/RadioButtonFieldGroup.js +10 -1
  61. package/lib/module/components/RadioButton/context.js +1 -1
  62. package/lib/module/components/ResizeMode.js +1 -0
  63. package/lib/module/components/StepIndicator.js +58 -18
  64. package/lib/module/components/Surface.js +15 -1
  65. package/lib/module/components/Switch.js +21 -10
  66. package/lib/module/components/TabView/TabView.js +17 -7
  67. package/lib/module/components/TabView/TabViewItem.js +4 -3
  68. package/lib/module/components/Table/Table.js +6 -5
  69. package/lib/module/components/TextField.js +78 -28
  70. package/lib/module/components/ToggleButton.js +16 -2
  71. package/lib/module/constants.js +1 -0
  72. package/lib/module/mappings/CardBlock.js +119 -0
  73. package/lib/module/mappings/CardContainer.js +101 -0
  74. package/lib/module/mappings/CardContainerRating.js +123 -0
  75. package/lib/module/mappings/CardContainerShortImage.js +117 -0
  76. package/lib/module/mappings/CardInline.js +52 -0
  77. package/lib/module/mappings/HeaderLarge.js +27 -0
  78. package/lib/module/mappings/HeaderMedium.js +53 -0
  79. package/lib/module/mappings/HeaderOverline.js +53 -0
  80. package/lib/module/mappings/ProgressIndicator.js +181 -0
  81. package/lib/typescript/src/components/DeprecatedCardWrapper.d.ts +15 -0
  82. package/lib/typescript/src/components/DeprecatedCardWrapper.d.ts.map +1 -0
  83. package/lib/typescript/src/components/DeprecatedFAB.d.ts +56 -0
  84. package/lib/typescript/src/components/DeprecatedFAB.d.ts.map +1 -0
  85. package/lib/typescript/src/components/ProgressIndicator.d.ts +24 -0
  86. package/lib/typescript/src/components/ProgressIndicator.d.ts.map +1 -0
  87. package/lib/typescript/src/components/ResizeMode.d.ts +2 -0
  88. package/lib/typescript/src/components/ResizeMode.d.ts.map +1 -0
  89. package/lib/typescript/src/mappings/CardBlock.d.ts +289 -0
  90. package/lib/typescript/src/mappings/CardBlock.d.ts.map +1 -0
  91. package/lib/typescript/src/mappings/CardContainer.d.ts +102 -0
  92. package/lib/typescript/src/mappings/CardContainer.d.ts.map +1 -0
  93. package/lib/typescript/src/mappings/CardContainerRating.d.ts +108 -0
  94. package/lib/typescript/src/mappings/CardContainerRating.d.ts.map +1 -0
  95. package/lib/typescript/src/mappings/CardContainerShortImage.d.ts +139 -0
  96. package/lib/typescript/src/mappings/CardContainerShortImage.d.ts.map +1 -0
  97. package/lib/typescript/src/mappings/CardInline.d.ts +62 -0
  98. package/lib/typescript/src/mappings/CardInline.d.ts.map +1 -0
  99. package/lib/typescript/src/mappings/HeaderLarge.d.ts +34 -0
  100. package/lib/typescript/src/mappings/HeaderLarge.d.ts.map +1 -0
  101. package/lib/typescript/src/mappings/HeaderMedium.d.ts +53 -0
  102. package/lib/typescript/src/mappings/HeaderMedium.d.ts.map +1 -0
  103. package/lib/typescript/src/mappings/HeaderOverline.d.ts +53 -0
  104. package/lib/typescript/src/mappings/HeaderOverline.d.ts.map +1 -0
  105. package/lib/typescript/src/mappings/ProgressIndicator.d.ts +181 -0
  106. package/lib/typescript/src/mappings/ProgressIndicator.d.ts.map +1 -0
  107. package/package.json +3 -3
  108. package/src/components/DeprecatedCardWrapper.js +18 -0
  109. package/src/components/DeprecatedCardWrapper.tsx +46 -0
  110. package/src/components/DeprecatedFAB.js +114 -0
  111. package/src/components/DeprecatedFAB.tsx +231 -0
  112. package/src/components/ProgressIndicator.js +27 -0
  113. package/src/components/ProgressIndicator.tsx +71 -0
  114. package/src/components/ResizeMode.js +1 -0
  115. package/src/components/ResizeMode.ts +7 -0
  116. package/src/mappings/CardBlock.js +123 -0
  117. package/src/mappings/CardBlock.ts +136 -0
  118. package/src/mappings/CardContainer.js +104 -0
  119. package/src/mappings/CardContainer.ts +116 -0
  120. package/src/mappings/CardContainerRating.js +126 -0
  121. package/src/mappings/CardContainerRating.ts +137 -0
  122. package/src/mappings/CardContainerShortImage.js +120 -0
  123. package/src/mappings/CardContainerShortImage.ts +130 -0
  124. package/src/mappings/CardInline.js +52 -0
  125. package/src/mappings/CardInline.ts +61 -0
  126. package/src/mappings/HeaderLarge.js +29 -0
  127. package/src/mappings/HeaderLarge.ts +38 -0
  128. package/src/mappings/HeaderMedium.js +55 -0
  129. package/src/mappings/HeaderMedium.ts +63 -0
  130. package/src/mappings/HeaderOverline.js +55 -0
  131. package/src/mappings/HeaderOverline.ts +63 -0
  132. package/src/mappings/ProgressIndicator.js +181 -0
  133. package/src/mappings/ProgressIndicator.ts +190 -0
@@ -1,8 +1,5 @@
1
1
  import React from "react";
2
2
  import { StyleSheet, View } from "react-native";
3
-
4
- //Props used by parent (TabView) to create tabs
5
-
6
3
  const TabViewItem = _ref => {
7
4
  let {
8
5
  style,
@@ -17,4 +14,8 @@ const styles = StyleSheet.create({
17
14
  flex: 1
18
15
  }
19
16
  });
17
+ export default TabViewItem; {
18
+ flex: 1
19
+ }
20
+ });
20
21
  export default TabViewItem;
@@ -32,7 +32,6 @@ const Table = _ref => {
32
32
  return object.isTableHeader;
33
33
  }, []);
34
34
  const isRenderItem = data && renderItem;
35
-
36
35
  //Uses 'renderItem' and 'data' to create an array of children
37
36
  const dataAsChildren = React.useMemo(() => {
38
37
  if (!isRenderItem) return [];
@@ -57,7 +56,7 @@ const Table = _ref => {
57
56
  const nestedChildren = React.Children.toArray(item.props.children);
58
57
  //Header can be nested in React.Fragment when in renderItem
59
58
  const nestedHeaders = nestedChildren.filter(child => isTableHeader(child.props));
60
- if (nestedHeaders !== null && nestedHeaders !== void 0 && nestedHeaders.length) {
59
+ if (nestedHeaders === null || nestedHeaders === void 0 ? void 0 : nestedHeaders.length) {
61
60
  //New element excluding header children
62
61
  return /*#__PURE__*/React.cloneElement(item, {
63
62
  children: nestedChildren.filter(child => !isTableHeader(child.props))
@@ -72,7 +71,7 @@ const Table = _ref => {
72
71
  const nestedChildren = React.Children.toArray(item.props.children);
73
72
  //Header can be nested in React.Fragment when in renderItem
74
73
  const nestedHeaders = nestedChildren.filter(child => isTableHeader(child.props));
75
- if (nestedHeaders !== null && nestedHeaders !== void 0 && nestedHeaders.length) {
74
+ if (nestedHeaders === null || nestedHeaders === void 0 ? void 0 : nestedHeaders.length) {
76
75
  return nestedHeaders[0];
77
76
  }
78
77
  return item;
@@ -104,11 +103,13 @@ const Table = _ref => {
104
103
  value: contextValue
105
104
  }, /*#__PURE__*/React.createElement(View, {
106
105
  style: [styles.container, borderViewStyle, style]
107
- }, /*#__PURE__*/React.createElement(React.Fragment, null, header), /*#__PURE__*/React.createElement(ScrollView, rest, childrenWithoutHeader)));
106
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, header), /*#__PURE__*/React.createElement(ScrollView, {
107
+ ...rest
108
+ }, childrenWithoutHeader)));
108
109
  };
109
110
  const styles = StyleSheet.create({
110
111
  container: {
111
112
  flex: 1
112
113
  }
113
114
  });
114
- export default withTheme(Table);rt default withTheme(Table);
115
+ export default withTheme(Table);
@@ -1,7 +1,3 @@
1
- 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); }
2
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
1
  import * as React from "react";
6
2
  import { View, Animated, TextInput as NativeTextInput, StyleSheet, Text, I18nManager } from "react-native";
7
3
  import { withTheme } from "../theming";
@@ -13,7 +9,7 @@ const ICON_SIZE = 24;
13
9
  class TextField extends React.Component {
14
10
  constructor() {
15
11
  super(...arguments);
16
- _defineProperty(this, "state", {
12
+ this.state = {
17
13
  nativeProps: {},
18
14
  labeled: new Animated.Value(this.props.value || this.props.error ? 0 : 1),
19
15
  focused: false,
@@ -22,47 +18,46 @@ class TextField extends React.Component {
22
18
  measured: false,
23
19
  width: 0
24
20
  }
25
- });
26
- _defineProperty(this, "_timer", setTimeout(() => {}, 0));
27
- _defineProperty(this, "_showPlaceholder", () => {
21
+ };
22
+ this._timer = setTimeout(() => {}, 0);
23
+ this._showPlaceholder = () => {
28
24
  clearTimeout(this._timer);
29
-
30
25
  // Set the placeholder in a delay to offset the label animation
31
26
  // If we show it immediately, they'll overlap and look ugly
32
27
  this._timer = setTimeout(() => this.setState({
33
28
  placeholder: this.props.placeholder
34
29
  }), 50);
35
- });
36
- _defineProperty(this, "_hidePlaceholder", () => this.setState({
30
+ };
31
+ this._hidePlaceholder = () => this.setState({
37
32
  placeholder: ""
38
- }));
39
- _defineProperty(this, "_restoreLabel", () => Animated.timing(this.state.labeled, {
33
+ });
34
+ this._restoreLabel = () => Animated.timing(this.state.labeled, {
40
35
  toValue: 1,
41
36
  duration: FOCUS_ANIMATION_DURATION,
42
37
  useNativeDriver: true
43
- }).start());
44
- _defineProperty(this, "_minmizeLabel", () => Animated.timing(this.state.labeled, {
38
+ }).start();
39
+ this._minmizeLabel = () => Animated.timing(this.state.labeled, {
45
40
  toValue: 0,
46
41
  duration: BLUR_ANIMATION_DURATION,
47
42
  useNativeDriver: true
48
- }).start());
49
- _defineProperty(this, "_handleFocus", () => {
43
+ }).start();
44
+ this._handleFocus = () => {
50
45
  if (this.props.disabled) {
51
46
  return;
52
47
  }
53
48
  this.setState({
54
49
  focused: true
55
50
  });
56
- });
57
- _defineProperty(this, "_handleBlur", () => {
51
+ };
52
+ this._handleBlur = () => {
58
53
  if (this.props.disabled) {
59
54
  return;
60
55
  }
61
56
  this.setState({
62
57
  focused: false
63
58
  });
64
- });
65
- _defineProperty(this, "_handleChangeText", value => {
59
+ };
60
+ this._handleChangeText = value => {
66
61
  if (this.props.disabled) {
67
62
  return;
68
63
  }
@@ -77,8 +72,8 @@ class TextField extends React.Component {
77
72
  });
78
73
  this.props.onChangeText && this.props.onChangeText(value.nativeEvent.text);
79
74
  }
80
- });
81
- _defineProperty(this, "_root", undefined);
75
+ };
76
+ this._root = undefined;
82
77
  }
83
78
  static getDerivedStateFromProps(nextProps, prevState) {
84
79
  return {
@@ -165,7 +160,9 @@ class TextField extends React.Component {
165
160
  roundness,
166
161
  disabledOpacity
167
162
  },
168
- render = props => /*#__PURE__*/React.createElement(NativeTextInput, props),
163
+ render = props => /*#__PURE__*/React.createElement(NativeTextInput, {
164
+ ...props
165
+ }),
169
166
  ...rest
170
167
  } = this.props;
171
168
  const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);
@@ -305,9 +302,10 @@ class TextField extends React.Component {
305
302
  } = StyleSheet.flatten(style || {});
306
303
  return /*#__PURE__*/React.createElement(View, {
307
304
  style: [styles.container, styleProp]
308
- }, leftIconName && leftIconMode === "outset" ? /*#__PURE__*/React.createElement(Icon, _extends({}, leftIconProps, {
305
+ }, leftIconName && leftIconMode === "outset" ? /*#__PURE__*/React.createElement(Icon, {
306
+ ...leftIconProps,
309
307
  style: leftIconStyle
310
- })) : null, /*#__PURE__*/React.createElement(View, {
308
+ }) : null, /*#__PURE__*/React.createElement(View, {
311
309
  style: applyStyles([containerStyle], {
312
310
  height: style === null || style === void 0 ? void 0 : style.height,
313
311
  backgroundColor: bgColor,
@@ -375,9 +373,10 @@ class TextField extends React.Component {
375
373
  style: {
376
374
  justifyContent: type === "solid" ? "center" : undefined
377
375
  }
378
- }, /*#__PURE__*/React.createElement(Icon, _extends({}, leftIconProps, {
376
+ }, /*#__PURE__*/React.createElement(Icon, {
377
+ ...leftIconProps,
379
378
  style: leftIconStyle
380
- }))) : null, render({
379
+ })) : null, render({
381
380
  ref: c => {
382
381
  this._root = c;
383
382
  },
@@ -414,6 +413,57 @@ class TextField extends React.Component {
414
413
  }
415
414
  }
416
415
  export default withTheme(TextField);
416
+ const styles = StyleSheet.create({
417
+ container: {
418
+ alignSelf: "stretch"
419
+ },
420
+ placeholder: {
421
+ position: "absolute",
422
+ left: 0
423
+ },
424
+ underline: {
425
+ position: "absolute",
426
+ left: 0,
427
+ right: 0,
428
+ bottom: 0,
429
+ height: 2
430
+ },
431
+ input: {
432
+ flexGrow: 1,
433
+ justifyContent: "center",
434
+ textAlignVertical: "center",
435
+ margin: 0,
436
+ textAlign: I18nManager.isRTL ? "right" : "left"
437
+ }
438
+ });ionColor: activeColor,
439
+ multiline,
440
+ numberOfLines,
441
+ onFocus: this._handleFocus,
442
+ onBlur: this._handleBlur,
443
+ underlineColorAndroid: "transparent",
444
+ style: inputStyles,
445
+ ...rest,
446
+ ...this.state.nativeProps,
447
+ value: this.state.value
448
+ })), rightIconName ? /*#__PURE__*/React.createElement(Icon, {
449
+ name: rightIconName,
450
+ size: ICON_SIZE,
451
+ color: colors.light,
452
+ style: {
453
+ position: "absolute",
454
+ right: 16,
455
+ marginTop: type === "solid" ? MINIMIZED_LABEL_FONT_SIZE + 4 : 16
456
+ }
457
+ }) : null, assistiveText ? /*#__PURE__*/React.createElement(Text, {
458
+ style: [{
459
+ color: error ? colors.error : colors.light,
460
+ marginTop: 8,
461
+ marginLeft: assistiveTextLeftMargin
462
+ }]
463
+ }, assistiveText) : null);
464
+ }
465
+ }
466
+ export default withTheme(TextField);
417
467
  const styles = StyleSheet.create({
418
468
  container: {
419
469
  alignSelf: "stretch"
@@ -1,4 +1,3 @@
1
- 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); }
2
1
  import * as React from "react";
3
2
  import { withTheme } from "../theming";
4
3
  import { StyleSheet } from "react-native";
@@ -38,13 +37,28 @@ const ToggleButton = _ref => {
38
37
  setInternalValue(!internalValue);
39
38
  onPress(!internalValue);
40
39
  };
41
- return /*#__PURE__*/React.createElement(IconButton, _extends({
40
+ return /*#__PURE__*/React.createElement(IconButton, {
42
41
  Icon: Icon,
43
42
  icon: icon,
44
43
  size: iconSize,
45
44
  color: internalValue ? colors[color] : colors[colorSecondary],
46
45
  onPress: handlePress,
47
46
  disabled: disabled,
47
+ style: [styles.mainContainer, {
48
+ width,
49
+ height,
50
+ backgroundColor: internalValue ? colors[colorSecondary] : colors[color],
51
+ borderColor: colors[borderColor]
52
+ }, style],
53
+ ...rest
54
+ });
55
+ };
56
+ const styles = StyleSheet.create({
57
+ mainContainer: {
58
+ borderWidth: 1
59
+ }
60
+ });
61
+ export default withTheme(ToggleButton);: disabled,
48
62
  style: [styles.mainContainer, {
49
63
  width,
50
64
  height,
@@ -6,4 +6,5 @@ const DEFAULT_STATUSBAR_HEIGHT_EXPO = expo !== null && expo !== void 0 && expo.C
6
6
  export const APPROX_STATUSBAR_HEIGHT = Platform.select({
7
7
  android: DEFAULT_STATUSBAR_HEIGHT_EXPO,
8
8
  ios: Platform.Version < 11 ? DEFAULT_STATUSBAR_HEIGHT_EXPO : 0
9
+ });O : 0
9
10
  });
@@ -0,0 +1,119 @@
1
+ import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, createElevationType, createNumColumnsType, BLOCK_STYLES_SECTIONS } from "@draftbit/types";
2
+ const SEED_DATA_PROPS = {
3
+ image: {
4
+ group: GROUPS.data,
5
+ label: "Image",
6
+ description: "Image",
7
+ formType: FORM_TYPES.image,
8
+ propType: PROP_TYPES.ASSET,
9
+ defaultValue: null,
10
+ editable: true,
11
+ required: false
12
+ },
13
+ title: {
14
+ group: GROUPS.data,
15
+ label: "Title",
16
+ description: "Text to display",
17
+ formType: FORM_TYPES.string,
18
+ propType: PROP_TYPES.STRING,
19
+ defaultValue: "Beautiful West Coast Villa",
20
+ editable: true,
21
+ required: false
22
+ },
23
+ leftDescription: {
24
+ group: GROUPS.data,
25
+ label: "Left description",
26
+ description: "Text to display on the left",
27
+ formType: FORM_TYPES.string,
28
+ propType: PROP_TYPES.STRING,
29
+ defaultValue: "San Diego",
30
+ editable: true,
31
+ required: false
32
+ },
33
+ rightDescription: {
34
+ group: GROUPS.data,
35
+ label: "Right description",
36
+ description: "Text to display on the right",
37
+ formType: FORM_TYPES.string,
38
+ propType: PROP_TYPES.STRING,
39
+ defaultValue: "$100",
40
+ editable: true,
41
+ required: false
42
+ },
43
+ aspectRatio: {
44
+ group: GROUPS.basic,
45
+ label: "Aspect ratio",
46
+ description: "Aspect ratio of the image",
47
+ formType: FORM_TYPES.aspectRatio,
48
+ propType: PROP_TYPES.NUMBER,
49
+ defaultValue: 1.5,
50
+ editable: true,
51
+ required: false
52
+ },
53
+ titleCentered: {
54
+ group: GROUPS.basic,
55
+ label: "Title centered",
56
+ description: "Whether to center the title",
57
+ formType: FORM_TYPES.boolean,
58
+ propType: PROP_TYPES.BOOLEAN,
59
+ defaultValue: false,
60
+ editable: true,
61
+ required: false
62
+ },
63
+ elevation: createElevationType(2)
64
+ };
65
+ export const SEED_DATA = [{
66
+ name: "Small Card",
67
+ tag: "CardBlock",
68
+ description: "An elevated card with a title and description, that takes up one third of its container.",
69
+ category: COMPONENT_TYPES.card,
70
+ props: {
71
+ ...SEED_DATA_PROPS,
72
+ numColumns: createNumColumnsType({
73
+ defaultValue: 1
74
+ })
75
+ }
76
+ }, {
77
+ name: "Medium Block Card",
78
+ tag: "CardBlock",
79
+ description: "An elevated card with a title and description, that takes up one half of its container.",
80
+ category: COMPONENT_TYPES.card,
81
+ props: {
82
+ ...SEED_DATA_PROPS,
83
+ icon: {
84
+ group: GROUPS.basic,
85
+ label: "Icon",
86
+ description: "Icon to display on the top right",
87
+ formType: FORM_TYPES.icon,
88
+ propType: PROP_TYPES.STRING,
89
+ defaultValue: null,
90
+ editable: true,
91
+ required: true
92
+ },
93
+ numColumns: createNumColumnsType({
94
+ defaultValue: 2
95
+ })
96
+ }
97
+ }, {
98
+ name: "Large Block Card",
99
+ tag: "CardBlock",
100
+ description: "An elevated card with a title and description, that takes up the full width its container.",
101
+ category: COMPONENT_TYPES.card,
102
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
103
+ props: {
104
+ ...SEED_DATA_PROPS,
105
+ icon: {
106
+ group: GROUPS.basic,
107
+ label: "Icon",
108
+ description: "Icon to display on the top right",
109
+ formType: FORM_TYPES.icon,
110
+ propType: PROP_TYPES.STRING,
111
+ defaultValue: null,
112
+ editable: true,
113
+ required: true
114
+ },
115
+ numColumns: createNumColumnsType({
116
+ defaultValue: 3
117
+ })
118
+ }
119
+ }];
@@ -0,0 +1,101 @@
1
+ import { GROUPS, FORM_TYPES, PROP_TYPES, COMPONENT_TYPES, createElevationType, createNumColumnsType, BLOCK_STYLES_SECTIONS } from "@draftbit/types";
2
+ const SEED_DATA_PROPS = {
3
+ image: {
4
+ label: "Image",
5
+ description: "Image",
6
+ formType: FORM_TYPES.image,
7
+ propType: PROP_TYPES.ASSET,
8
+ defaultValue: null,
9
+ editable: true,
10
+ required: true,
11
+ group: GROUPS.data
12
+ },
13
+ title: {
14
+ label: "Title",
15
+ description: "Text to display",
16
+ formType: FORM_TYPES.string,
17
+ propType: PROP_TYPES.STRING,
18
+ defaultValue: "Beautiful West Coast Villa",
19
+ editable: true,
20
+ required: false,
21
+ group: GROUPS.data
22
+ },
23
+ leftDescription: {
24
+ label: "Left description",
25
+ description: "Text to display on the left",
26
+ formType: FORM_TYPES.string,
27
+ propType: PROP_TYPES.STRING,
28
+ defaultValue: "San Diego",
29
+ editable: true,
30
+ required: false,
31
+ group: GROUPS.data
32
+ },
33
+ rightDescription: {
34
+ label: "Right description",
35
+ description: "Text to display on the right",
36
+ formType: FORM_TYPES.string,
37
+ propType: PROP_TYPES.STRING,
38
+ defaultValue: "$100",
39
+ editable: true,
40
+ required: false,
41
+ group: GROUPS.data
42
+ },
43
+ icon: {
44
+ label: "Icon",
45
+ description: "Icon to display on the top right",
46
+ formType: FORM_TYPES.icon,
47
+ propType: PROP_TYPES.STRING /* OR ASSET TODO TEST ME */,
48
+ defaultValue: null,
49
+ editable: true,
50
+ required: false,
51
+ group: GROUPS.basic
52
+ },
53
+ aspectRatio: {
54
+ label: "Aspect ratio",
55
+ description: "Aspect ratio of the image",
56
+ formType: FORM_TYPES.aspectRatio,
57
+ propType: PROP_TYPES.NUMBER,
58
+ defaultValue: 1.5,
59
+ editable: true,
60
+ required: false,
61
+ group: GROUPS.basic
62
+ },
63
+ textCentered: {
64
+ label: "Centered Text",
65
+ description: "Whether to center the text",
66
+ formType: FORM_TYPES.boolean,
67
+ propType: PROP_TYPES.BOOLEAN,
68
+ defaultValue: false,
69
+ editable: true,
70
+ required: false,
71
+ group: GROUPS.basic
72
+ },
73
+ elevation: createElevationType(2)
74
+ };
75
+ export const SEED_DATA = [{
76
+ name: "Medium Card",
77
+ tag: "CardContainer",
78
+ description: "An elevated card with a title and description, that takes up half of its container.",
79
+ category: COMPONENT_TYPES.card,
80
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
81
+ layout: null,
82
+ props: {
83
+ ...SEED_DATA_PROPS,
84
+ numColumns: createNumColumnsType({
85
+ defaultValue: 2
86
+ })
87
+ }
88
+ }, {
89
+ name: "Large Card",
90
+ tag: "CardContainer",
91
+ description: "An elevated card with a title and description, that takes up its full container.",
92
+ category: COMPONENT_TYPES.card,
93
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
94
+ layout: null,
95
+ props: {
96
+ ...SEED_DATA_PROPS,
97
+ numColumns: createNumColumnsType({
98
+ defaultValue: 3
99
+ })
100
+ }
101
+ }];
@@ -0,0 +1,123 @@
1
+ import { GROUPS, FORM_TYPES, PROP_TYPES, COMPONENT_TYPES, createElevationType, BLOCK_STYLES_SECTIONS } from "@draftbit/types";
2
+ const SEED_DATA_PROPS = {
3
+ image: {
4
+ group: GROUPS.data,
5
+ label: "Image",
6
+ description: "Image",
7
+ formType: FORM_TYPES.image,
8
+ propType: PROP_TYPES.ASSET,
9
+ defaultValue: null,
10
+ editable: true,
11
+ required: false
12
+ },
13
+ title: {
14
+ group: GROUPS.data,
15
+ label: "Title",
16
+ description: "Text to display",
17
+ formType: FORM_TYPES.string,
18
+ propType: PROP_TYPES.STRING,
19
+ defaultValue: "Beautiful West Coast Villa",
20
+ editable: true,
21
+ required: false
22
+ },
23
+ leftDescription: {
24
+ group: GROUPS.data,
25
+ label: "Left description",
26
+ description: "Text to display on the left",
27
+ formType: FORM_TYPES.string,
28
+ propType: PROP_TYPES.STRING,
29
+ defaultValue: "San Diego",
30
+ editable: true,
31
+ required: false
32
+ },
33
+ rightDescription: {
34
+ group: GROUPS.data,
35
+ label: "Right description",
36
+ description: "Text to display on the right",
37
+ formType: FORM_TYPES.string,
38
+ propType: PROP_TYPES.STRING,
39
+ defaultValue: "$100",
40
+ editable: true,
41
+ required: false
42
+ },
43
+ icon: {
44
+ group: GROUPS.basic,
45
+ label: "Icon",
46
+ description: "Icon to display on the top right",
47
+ formType: FORM_TYPES.icon,
48
+ propType: PROP_TYPES.ASSET,
49
+ defaultValue: null,
50
+ editable: true,
51
+ required: false
52
+ },
53
+ aspectRatio: {
54
+ group: GROUPS.basic,
55
+ label: "Aspect ratio",
56
+ description: "Aspect ratio of the image",
57
+ formType: FORM_TYPES.aspectRatio,
58
+ propType: PROP_TYPES.NUMBER,
59
+ defaultValue: 1.5,
60
+ editable: true,
61
+ required: false
62
+ },
63
+ rating: {
64
+ group: GROUPS.data,
65
+ label: "Rating",
66
+ description: "Number of stars to show. A number 0-5.",
67
+ formType: FORM_TYPES.number,
68
+ propType: PROP_TYPES.NUMBER,
69
+ defaultValue: 5,
70
+ min: 0,
71
+ max: 5,
72
+ step: 1,
73
+ precision: 0,
74
+ editable: true,
75
+ required: false
76
+ },
77
+ elevation: createElevationType(2)
78
+ };
79
+ export const SEED_DATA = [{
80
+ name: "Medium Card (Rating)",
81
+ tag: "CardContainerRating",
82
+ description: "An elevated card with a title and description, that takes up half of its container.",
83
+ category: COMPONENT_TYPES.card,
84
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
85
+ preview_image_url: "{CLOUDINARY_URL}/Card_ContainerRating_2col.png",
86
+ supports_list_render: true,
87
+ props: {
88
+ ...SEED_DATA_PROPS,
89
+ numColumns: {
90
+ label: "Number of Columns",
91
+ description: "Numbre of columns",
92
+ group: GROUPS.uncategorized,
93
+ formType: FORM_TYPES.number,
94
+ propType: PROP_TYPES.NUMBER,
95
+ defaultValue: 2,
96
+ editable: false,
97
+ required: false
98
+ }
99
+ },
100
+ layout: {}
101
+ }, {
102
+ name: "Large Card (Rating)",
103
+ tag: "CardContainerRating",
104
+ description: "An elevated card with a title and description, that takes up its full container.",
105
+ category: COMPONENT_TYPES.card,
106
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
107
+ preview_image_url: "{CLOUDINARY_URL}/Card_ContainerRating_3col.png",
108
+ supports_list_render: true,
109
+ props: {
110
+ ...SEED_DATA_PROPS,
111
+ numColumns: {
112
+ label: "Number of Columns",
113
+ description: "Numbre of columns",
114
+ group: GROUPS.uncategorized,
115
+ formType: FORM_TYPES.number,
116
+ propType: PROP_TYPES.NUMBER,
117
+ defaultValue: 3,
118
+ editable: false,
119
+ required: false
120
+ }
121
+ },
122
+ layout: {}
123
+ }];