@draftbit/core 46.10.3-106fd0.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 (147) 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/Table/Table.js +11 -10
  31. package/lib/commonjs/components/Table/TableCell.js +3 -3
  32. package/lib/commonjs/components/Table/TableCommon.js +30 -0
  33. package/lib/commonjs/components/Table/TableRow.js +4 -4
  34. package/lib/commonjs/components/Table/index.js +3 -27
  35. package/lib/commonjs/components/ToggleButton.js +15 -2
  36. package/lib/commonjs/constants.js +1 -1
  37. package/lib/commonjs/hooks.js +1 -2
  38. package/lib/commonjs/mappings/CardBlock.js +126 -0
  39. package/lib/commonjs/mappings/CardContainer.js +108 -0
  40. package/lib/commonjs/mappings/CardContainerRating.js +130 -0
  41. package/lib/commonjs/mappings/CardContainerShortImage.js +124 -0
  42. package/lib/commonjs/mappings/CardInline.js +59 -0
  43. package/lib/commonjs/mappings/ProgressIndicator.js +188 -0
  44. package/lib/commonjs/styles/overlay.js +1 -3
  45. package/lib/module/components/AnimatedCircularProgress.js +13 -1
  46. package/lib/module/components/AspectRatio.js +1 -18
  47. package/lib/module/components/AvatarEdit.js +15 -4
  48. package/lib/module/components/Banner.js +25 -4
  49. package/lib/module/components/Button.js +33 -10
  50. package/lib/module/components/Checkbox/CheckboxGroupRow.js +24 -5
  51. package/lib/module/components/Checkbox/CheckboxRow.js +24 -6
  52. package/lib/module/components/Checkbox/context.js +1 -1
  53. package/lib/module/components/CircleImage.js +1 -16
  54. package/lib/module/components/DatePicker/DatePicker.js +27 -13
  55. package/lib/module/components/DeprecatedButton.js +3 -21
  56. package/lib/module/components/DeprecatedCardWrapper.js +32 -0
  57. package/lib/module/components/DeprecatedFAB.js +167 -0
  58. package/lib/module/components/Divider.js +18 -1
  59. package/lib/module/components/IconButton.js +4 -21
  60. package/lib/module/components/Layout.js +42 -21
  61. package/lib/module/components/Picker/PickerComponent.android.js +21 -3
  62. package/lib/module/components/Portal/PortalConsumer.js +22 -7
  63. package/lib/module/components/Pressable.js +2 -15
  64. package/lib/module/components/ProgressIndicator.js +45 -0
  65. package/lib/module/components/RadioButton/RadioButton.js +13 -1
  66. package/lib/module/components/RadioButton/RadioButtonFieldGroup.js +10 -1
  67. package/lib/module/components/RadioButton/context.js +1 -1
  68. package/lib/module/components/ResizeMode.js +1 -0
  69. package/lib/module/components/Shadow.js +2 -15
  70. package/lib/module/components/StepIndicator.js +58 -18
  71. package/lib/module/components/Surface.js +15 -1
  72. package/lib/module/components/Switch.js +21 -10
  73. package/lib/module/components/TabView/TabView.js +17 -7
  74. package/lib/module/components/TabView/TabViewItem.js +4 -3
  75. package/lib/module/components/Table/Table.js +12 -11
  76. package/lib/module/components/Table/TableCell.js +1 -1
  77. package/lib/module/components/Table/TableCommon.js +21 -0
  78. package/lib/module/components/Table/TableRow.js +3 -2
  79. package/lib/module/components/Table/index.js +1 -22
  80. package/lib/module/components/TextField.js +78 -28
  81. package/lib/module/mappings/CardBlock.js +119 -0
  82. package/lib/module/mappings/CardContainer.js +101 -0
  83. package/lib/module/mappings/CardContainerRating.js +123 -0
  84. package/lib/module/mappings/CardContainerShortImage.js +117 -0
  85. package/lib/module/mappings/CardInline.js +52 -0
  86. package/lib/module/mappings/ProgressIndicator.js +181 -0
  87. package/lib/typescript/src/components/DeprecatedCardWrapper.d.ts +15 -0
  88. package/lib/typescript/src/components/DeprecatedCardWrapper.d.ts.map +1 -0
  89. package/lib/typescript/src/components/DeprecatedFAB.d.ts +56 -0
  90. package/lib/typescript/src/components/DeprecatedFAB.d.ts.map +1 -0
  91. package/lib/typescript/src/components/ProgressIndicator.d.ts +24 -0
  92. package/lib/typescript/src/components/ProgressIndicator.d.ts.map +1 -0
  93. package/lib/typescript/src/components/ResizeMode.d.ts +2 -0
  94. package/lib/typescript/src/components/ResizeMode.d.ts.map +1 -0
  95. package/lib/typescript/src/components/Table/Table.d.ts +7 -2
  96. package/lib/typescript/src/components/Table/Table.d.ts.map +1 -1
  97. package/lib/typescript/src/components/Table/TableCell.d.ts +1 -1
  98. package/lib/typescript/src/components/Table/TableCell.d.ts.map +1 -1
  99. package/lib/typescript/src/components/Table/TableCommon.d.ts +20 -0
  100. package/lib/typescript/src/components/Table/TableCommon.d.ts.map +1 -0
  101. package/lib/typescript/src/components/Table/TableRow.d.ts +1 -1
  102. package/lib/typescript/src/components/Table/TableRow.d.ts.map +1 -1
  103. package/lib/typescript/src/components/Table/index.d.ts +1 -19
  104. package/lib/typescript/src/components/Table/index.d.ts.map +1 -1
  105. package/lib/typescript/src/mappings/CardBlock.d.ts +289 -0
  106. package/lib/typescript/src/mappings/CardBlock.d.ts.map +1 -0
  107. package/lib/typescript/src/mappings/CardContainer.d.ts +102 -0
  108. package/lib/typescript/src/mappings/CardContainer.d.ts.map +1 -0
  109. package/lib/typescript/src/mappings/CardContainerRating.d.ts +108 -0
  110. package/lib/typescript/src/mappings/CardContainerRating.d.ts.map +1 -0
  111. package/lib/typescript/src/mappings/CardContainerShortImage.d.ts +139 -0
  112. package/lib/typescript/src/mappings/CardContainerShortImage.d.ts.map +1 -0
  113. package/lib/typescript/src/mappings/CardInline.d.ts +62 -0
  114. package/lib/typescript/src/mappings/CardInline.d.ts.map +1 -0
  115. package/lib/typescript/src/mappings/ProgressIndicator.d.ts +181 -0
  116. package/lib/typescript/src/mappings/ProgressIndicator.d.ts.map +1 -0
  117. package/package.json +3 -3
  118. package/src/components/DeprecatedCardWrapper.js +18 -0
  119. package/src/components/DeprecatedCardWrapper.tsx +46 -0
  120. package/src/components/DeprecatedFAB.js +114 -0
  121. package/src/components/DeprecatedFAB.tsx +231 -0
  122. package/src/components/ProgressIndicator.js +27 -0
  123. package/src/components/ProgressIndicator.tsx +71 -0
  124. package/src/components/ResizeMode.js +1 -0
  125. package/src/components/ResizeMode.ts +7 -0
  126. package/src/components/Table/Table.js +4 -2
  127. package/src/components/Table/Table.tsx +9 -3
  128. package/src/components/Table/TableCell.js +1 -1
  129. package/src/components/Table/TableCell.tsx +5 -1
  130. package/src/components/Table/TableCommon.js +12 -0
  131. package/src/components/Table/TableCommon.ts +40 -0
  132. package/src/components/Table/TableRow.js +1 -1
  133. package/src/components/Table/TableRow.tsx +1 -1
  134. package/src/components/Table/index.js +1 -13
  135. package/src/components/Table/index.tsx +1 -42
  136. package/src/mappings/CardBlock.js +123 -0
  137. package/src/mappings/CardBlock.ts +136 -0
  138. package/src/mappings/CardContainer.js +104 -0
  139. package/src/mappings/CardContainer.ts +116 -0
  140. package/src/mappings/CardContainerRating.js +126 -0
  141. package/src/mappings/CardContainerRating.ts +137 -0
  142. package/src/mappings/CardContainerShortImage.js +120 -0
  143. package/src/mappings/CardContainerShortImage.ts +130 -0
  144. package/src/mappings/CardInline.js +52 -0
  145. package/src/mappings/CardInline.ts +61 -0
  146. package/src/mappings/ProgressIndicator.js +181 -0
  147. package/src/mappings/ProgressIndicator.ts +190 -0
@@ -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"
@@ -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
+ }];
@@ -0,0 +1,117 @@
1
+ import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, createElevationType, BLOCK_STYLES_SECTIONS } from "@draftbit/types";
2
+ export const SEED_DATA = [{
3
+ name: "Short Card (Left)",
4
+ tag: "CardContainerShortImage",
5
+ description: "An elevated card with a left aligned image and a title and subtitle",
6
+ category: COMPONENT_TYPES.card,
7
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
8
+ preview_image_url: "{CLOUDINARY_URL}/Card_ContainerShortLeftImage.png",
9
+ supports_list_render: true,
10
+ props: {
11
+ image: {
12
+ group: GROUPS.data,
13
+ label: "Image",
14
+ description: "Image",
15
+ formType: FORM_TYPES.image,
16
+ propType: PROP_TYPES.ASSET,
17
+ defaultValue: null,
18
+ editable: true,
19
+ required: false
20
+ },
21
+ title: {
22
+ group: GROUPS.data,
23
+ label: "Title",
24
+ description: "Title to display",
25
+ formType: FORM_TYPES.string,
26
+ propType: PROP_TYPES.STRING,
27
+ defaultValue: "Beautiful West Coast Villa",
28
+ editable: true,
29
+ required: false
30
+ },
31
+ subtitle: {
32
+ group: GROUPS.data,
33
+ label: "Subtitle",
34
+ description: "Subtitle to display",
35
+ formType: FORM_TYPES.string,
36
+ propType: PROP_TYPES.STRING,
37
+ defaultValue: "San Diego",
38
+ editable: true,
39
+ required: false
40
+ },
41
+ aspectRatio: {
42
+ group: GROUPS.basic,
43
+ label: "Aspect ratio",
44
+ description: "Aspect ratio of the image",
45
+ formType: FORM_TYPES.aspectRatio,
46
+ propType: PROP_TYPES.STRING,
47
+ defaultValue: null,
48
+ editable: true,
49
+ required: false
50
+ },
51
+ elevation: createElevationType(2),
52
+ mode: {
53
+ group: GROUPS.uncategorized,
54
+ label: "Image Side",
55
+ description: "The side on which the image is on (left or right)",
56
+ formType: FORM_TYPES.flatArray,
57
+ propType: PROP_TYPES.STRING,
58
+ defaultValue: "left",
59
+ options: ["left", "right"],
60
+ editable: false,
61
+ required: false
62
+ }
63
+ },
64
+ layout: {}
65
+ }, {
66
+ name: "Short Card (Right)",
67
+ tag: "CardContainerShortImage",
68
+ description: "An elevated card with a right aligned image and a title and subtitle",
69
+ category: COMPONENT_TYPES.card,
70
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
71
+ preview_image_url: "{CLOUDINARY_URL}/Card_ContainerShortRightImage.png",
72
+ supports_list_render: true,
73
+ props: {
74
+ image: {
75
+ group: GROUPS.data,
76
+ label: "Image",
77
+ description: "Image",
78
+ formType: FORM_TYPES.image,
79
+ propType: PROP_TYPES.ASSET,
80
+ defaultValue: null,
81
+ editable: true,
82
+ required: false
83
+ },
84
+ title: {
85
+ group: GROUPS.data,
86
+ label: "Title",
87
+ description: "Title to display",
88
+ formType: FORM_TYPES.string,
89
+ propType: PROP_TYPES.STRING,
90
+ defaultValue: "Beautiful West Coast Villa",
91
+ editable: true,
92
+ required: false
93
+ },
94
+ subtitle: {
95
+ group: GROUPS.data,
96
+ label: "Subtitle",
97
+ description: "Subtitle to display",
98
+ formType: FORM_TYPES.string,
99
+ propType: PROP_TYPES.STRING,
100
+ defaultValue: "San Diego",
101
+ editable: true,
102
+ required: false
103
+ },
104
+ elevation: createElevationType(2),
105
+ mode: {
106
+ label: "Mode",
107
+ description: "Mode",
108
+ group: GROUPS.uncategorized,
109
+ formType: FORM_TYPES.string,
110
+ propType: PROP_TYPES.STRING,
111
+ defaultValue: "right",
112
+ editable: false,
113
+ required: false
114
+ }
115
+ },
116
+ layout: {}
117
+ }];
@@ -0,0 +1,52 @@
1
+ import { GROUPS, COMPONENT_TYPES, FORM_TYPES, PROP_TYPES, createElevationType, BLOCK_STYLES_SECTIONS } from "@draftbit/types";
2
+ export const SEED_DATA = {
3
+ name: "Inline Card",
4
+ tag: "CardInline",
5
+ description: "An elevated card with image and a title and description overlayed, that takes up the full width of its container.",
6
+ category: COMPONENT_TYPES.card,
7
+ stylesPanelSections: BLOCK_STYLES_SECTIONS,
8
+ layout: {},
9
+ props: {
10
+ image: {
11
+ group: GROUPS.data,
12
+ label: "Image",
13
+ description: "Image",
14
+ formType: FORM_TYPES.image,
15
+ propType: PROP_TYPES.ASSET,
16
+ defaultValue: null,
17
+ editable: true,
18
+ required: false
19
+ },
20
+ title: {
21
+ group: GROUPS.data,
22
+ label: "Title",
23
+ description: "Text to display",
24
+ formType: FORM_TYPES.string,
25
+ propType: PROP_TYPES.STRING,
26
+ defaultValue: "Beautiful West Coast Villa",
27
+ editable: true,
28
+ required: false
29
+ },
30
+ subtitle: {
31
+ group: GROUPS.data,
32
+ label: "Subtitle",
33
+ description: "Subtitle text",
34
+ formType: FORM_TYPES.string,
35
+ propType: PROP_TYPES.STRING,
36
+ defaultValue: "San Diego",
37
+ editable: true,
38
+ required: false
39
+ },
40
+ aspectRatio: {
41
+ group: GROUPS.basic,
42
+ label: "Aspect ratio",
43
+ description: "Aspect ratio of the image",
44
+ formType: FORM_TYPES.aspectRatio,
45
+ propType: PROP_TYPES.NUMBER,
46
+ defaultValue: 1.5,
47
+ editable: true,
48
+ required: false
49
+ },
50
+ elevation: createElevationType(2)
51
+ }
52
+ };