@draftbit/core 46.6.6 → 46.6.7

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 (252) hide show
  1. package/lib/commonjs/components/CardBlock.js +4 -13
  2. package/lib/commonjs/components/CardContainerRating.js +4 -13
  3. package/lib/commonjs/components/Checkbox/Checkbox.js +4 -22
  4. package/lib/commonjs/components/Checkbox/CheckboxGroupRow.js +5 -23
  5. package/lib/commonjs/components/Checkbox/CheckboxRow.js +6 -23
  6. package/lib/commonjs/components/Container.js +4 -15
  7. package/lib/commonjs/components/DatePicker/DatePicker.js +13 -26
  8. package/lib/commonjs/components/DeprecatedFAB.js +3 -21
  9. package/lib/commonjs/components/Divider.js +1 -14
  10. package/lib/commonjs/components/FAB.js +4 -18
  11. package/lib/commonjs/components/FormRow.js +2 -16
  12. package/lib/commonjs/components/IconButton.js +4 -19
  13. package/lib/commonjs/components/Image.js +2 -17
  14. package/lib/commonjs/components/Justification.js +1 -5
  15. package/lib/commonjs/components/Layout.js +19 -40
  16. package/lib/commonjs/components/Picker/Picker.js +1 -1
  17. package/lib/commonjs/components/Picker/PickerComponent.web.js +4 -19
  18. package/lib/commonjs/components/Portal/PortalHost.js +15 -44
  19. package/lib/commonjs/components/Portal/PortalManager.js +8 -34
  20. package/lib/commonjs/components/Pressable.js +2 -15
  21. package/lib/commonjs/components/ProgressBar.js +7 -37
  22. package/lib/commonjs/components/RadioButton/RadioButtonFieldGroup.js +1 -9
  23. package/lib/commonjs/components/ResizeMode.js +1 -5
  24. package/lib/commonjs/components/ScreenContainer.js +4 -20
  25. package/lib/commonjs/components/StepIndicator.js +18 -57
  26. package/lib/commonjs/components/Stepper.js +0 -1
  27. package/lib/commonjs/components/Surface.js +2 -14
  28. package/lib/commonjs/components/Switch.js +10 -19
  29. package/lib/commonjs/components/TextField.js +28 -76
  30. package/lib/commonjs/components/ToggleButton.js +2 -15
  31. package/lib/commonjs/components/Touchable.js +2 -15
  32. package/lib/commonjs/constants.js +1 -1
  33. package/lib/commonjs/mappings/FieldSearchBarFull.js +1 -3
  34. package/lib/commonjs/utilities.js +2 -1
  35. package/lib/module/components/Accordion/AccordionItem.js +4 -25
  36. package/lib/module/components/AnimatedCircularProgress.js +1 -13
  37. package/lib/module/components/AspectRatio.js +1 -18
  38. package/lib/module/components/AvatarEdit.js +4 -15
  39. package/lib/module/components/CardContainerRating.js +4 -14
  40. package/lib/module/components/CardContainerShortImage.js +4 -18
  41. package/lib/module/components/Checkbox/Checkbox.js +4 -25
  42. package/lib/module/components/Checkbox/CheckboxGroup.js +2 -16
  43. package/lib/module/components/CircleImage.js +1 -16
  44. package/lib/module/components/CircularProgress.js +8 -28
  45. package/lib/module/components/Container.js +4 -17
  46. package/lib/module/components/DatePicker/DatePicker.js +13 -27
  47. package/lib/module/components/DeprecatedCardWrapper.js +1 -18
  48. package/lib/module/components/DeprecatedFAB.js +3 -23
  49. package/lib/module/components/Elevation.js +2 -14
  50. package/lib/module/components/FAB.js +4 -22
  51. package/lib/module/components/FieldSearchBarFull.js +2 -1
  52. package/lib/module/components/IconButton.js +4 -21
  53. package/lib/module/components/Justification.js +0 -1
  54. package/lib/module/components/Picker/Picker.js +1 -1
  55. package/lib/module/components/Picker/PickerComponent.web.js +4 -19
  56. package/lib/module/components/Portal/Portal.js +3 -28
  57. package/lib/module/components/Portal/PortalHost.js +15 -45
  58. package/lib/module/components/Portal/PortalManager.js +7 -33
  59. package/lib/module/components/ProgressBar.js +7 -39
  60. package/lib/module/components/RadioButton/RadioButtonFieldGroup.js +1 -10
  61. package/lib/module/components/RadioButton/context.js +1 -1
  62. package/lib/module/components/ResizeMode.js +0 -1
  63. package/lib/module/components/StarRating.js +4 -24
  64. package/lib/module/components/Stepper.js +1 -1
  65. package/lib/module/components/Surface.js +1 -15
  66. package/lib/module/components/TextField.js +28 -78
  67. package/lib/module/components/ToggleButton.js +2 -16
  68. package/lib/module/components/Touchable.js +2 -15
  69. package/lib/module/constants.js +0 -1
  70. package/lib/module/mappings/StarRating.js +2 -7
  71. package/lib/module/utilities.js +2 -1
  72. package/package.json +3 -3
  73. package/src/Provider.js +0 -9
  74. package/src/components/Accordion/AccordionGroup.js +0 -44
  75. package/src/components/Accordion/AccordionItem.js +0 -32
  76. package/src/components/Accordion/index.js +0 -2
  77. package/src/components/ActionSheet/ActionSheet.js +0 -45
  78. package/src/components/ActionSheet/ActionSheetCancel.js +0 -6
  79. package/src/components/ActionSheet/ActionSheetItem.js +0 -30
  80. package/src/components/ActionSheet/index.js +0 -3
  81. package/src/components/AnimatedCircularProgress.js +0 -43
  82. package/src/components/AspectRatio.js +0 -18
  83. package/src/components/AvatarEdit.js +0 -30
  84. package/src/components/Banner.js +0 -109
  85. package/src/components/Button.js +0 -114
  86. package/src/components/Card.js +0 -57
  87. package/src/components/CardBlock.js +0 -54
  88. package/src/components/CardContainer.js +0 -69
  89. package/src/components/CardContainerRating.js +0 -79
  90. package/src/components/CardContainerShortImage.js +0 -33
  91. package/src/components/CardInline.js +0 -36
  92. package/src/components/Carousel.js +0 -68
  93. package/src/components/Checkbox/Checkbox.js +0 -62
  94. package/src/components/Checkbox/CheckboxGroup.js +0 -21
  95. package/src/components/Checkbox/CheckboxGroupRow.js +0 -76
  96. package/src/components/Checkbox/CheckboxRow.js +0 -77
  97. package/src/components/Checkbox/context.js +0 -14
  98. package/src/components/Checkbox/index.js +0 -3
  99. package/src/components/CircleImage.js +0 -8
  100. package/src/components/CircularProgress.js +0 -81
  101. package/src/components/Config.js +0 -64
  102. package/src/components/Container.js +0 -43
  103. package/src/components/DatePicker/DatePicker.js +0 -377
  104. package/src/components/DatePicker/DatePickerComponent.js +0 -13
  105. package/src/components/DatePicker/DatePickerComponent.web.js +0 -30
  106. package/src/components/DatePicker/DatePickerComponentType.js +0 -1
  107. package/src/components/DeprecatedButton.js +0 -83
  108. package/src/components/DeprecatedCardWrapper.js +0 -18
  109. package/src/components/DeprecatedFAB.js +0 -114
  110. package/src/components/Divider.js +0 -13
  111. package/src/components/Elevation.js +0 -20
  112. package/src/components/FAB.js +0 -46
  113. package/src/components/FieldSearchBarFull.js +0 -53
  114. package/src/components/FormRow.js +0 -19
  115. package/src/components/Header.js +0 -44
  116. package/src/components/HeaderLarge.js +0 -7
  117. package/src/components/HeaderMedium.js +0 -7
  118. package/src/components/HeaderOverline.js +0 -7
  119. package/src/components/IconButton.js +0 -35
  120. package/src/components/Image.js +0 -47
  121. package/src/components/Justification.js +0 -1
  122. package/src/components/Layout.js +0 -50
  123. package/src/components/NumberInput.js +0 -49
  124. package/src/components/Picker/Picker.js +0 -267
  125. package/src/components/Picker/PickerComponent.android.js +0 -69
  126. package/src/components/Picker/PickerComponent.ios.js +0 -79
  127. package/src/components/Picker/PickerComponent.web.js +0 -70
  128. package/src/components/Picker/PickerTypes.js +0 -1
  129. package/src/components/Portal/Portal.js +0 -35
  130. package/src/components/Portal/PortalConsumer.js +0 -27
  131. package/src/components/Portal/PortalHost.js +0 -107
  132. package/src/components/Portal/PortalManager.js +0 -32
  133. package/src/components/Pressable.js +0 -12
  134. package/src/components/ProgressBar.js +0 -118
  135. package/src/components/ProgressCircle.js +0 -13
  136. package/src/components/ProgressIndicator.js +0 -27
  137. package/src/components/RadioButton/RadioButton.js +0 -17
  138. package/src/components/RadioButton/RadioButtonFieldGroup.js +0 -17
  139. package/src/components/RadioButton/RadioButtonGroup.js +0 -43
  140. package/src/components/RadioButton/RadioButtonRow.js +0 -76
  141. package/src/components/RadioButton/context.js +0 -14
  142. package/src/components/RadioButton/index.js +0 -4
  143. package/src/components/ResizeMode.js +0 -1
  144. package/src/components/Row.js +0 -48
  145. package/src/components/RowBodyIcon.js +0 -8
  146. package/src/components/RowHeadlineImageCaption.js +0 -12
  147. package/src/components/RowHeadlineImageIcon.js +0 -14
  148. package/src/components/SVG.js +0 -13
  149. package/src/components/ScreenContainer.js +0 -34
  150. package/src/components/Slider.js +0 -63
  151. package/src/components/StarRating.js +0 -50
  152. package/src/components/StepIndicator.js +0 -346
  153. package/src/components/Stepper.js +0 -41
  154. package/src/components/Surface.js +0 -32
  155. package/src/components/Swiper/Swiper.js +0 -29
  156. package/src/components/Swiper/SwiperItem.js +0 -9
  157. package/src/components/Swiper/index.js +0 -2
  158. package/src/components/Switch.js +0 -56
  159. package/src/components/Text.js +0 -33
  160. package/src/components/TextField.js +0 -428
  161. package/src/components/ToggleButton.js +0 -39
  162. package/src/components/Touchable.js +0 -12
  163. package/src/components/Touchable.web.js +0 -2
  164. package/src/components/Typography.js +0 -36
  165. package/src/components/useAuthState.js +0 -31
  166. package/src/constants.js +0 -10
  167. package/src/hooks.js +0 -12
  168. package/src/index.js +0 -53
  169. package/src/interfaces/Icon.js +0 -8
  170. package/src/mappings/Accordion.js +0 -41
  171. package/src/mappings/AccordionItem.js +0 -16
  172. package/src/mappings/ActionSheet.js +0 -13
  173. package/src/mappings/ActionSheetCancel.js +0 -19
  174. package/src/mappings/ActionSheetItem.js +0 -23
  175. package/src/mappings/ActivityIndicator.js +0 -58
  176. package/src/mappings/AudioPlayer.js +0 -57
  177. package/src/mappings/AvatarEdit.js +0 -38
  178. package/src/mappings/Banner.js +0 -32
  179. package/src/mappings/BlurView.js +0 -42
  180. package/src/mappings/Button.js +0 -116
  181. package/src/mappings/Card.js +0 -52
  182. package/src/mappings/CardBlock.js +0 -123
  183. package/src/mappings/CardContainer.js +0 -104
  184. package/src/mappings/CardContainerRating.js +0 -126
  185. package/src/mappings/CardContainerShortImage.js +0 -120
  186. package/src/mappings/CardInline.js +0 -52
  187. package/src/mappings/Carousel.js +0 -19
  188. package/src/mappings/Checkbox.js +0 -46
  189. package/src/mappings/CheckboxGroup.js +0 -26
  190. package/src/mappings/CheckboxRow.js +0 -61
  191. package/src/mappings/CircleImage.js +0 -25
  192. package/src/mappings/Container.js +0 -30
  193. package/src/mappings/CustomCode.js +0 -8
  194. package/src/mappings/DatePicker.js +0 -176
  195. package/src/mappings/Divider.js +0 -27
  196. package/src/mappings/FAB.js +0 -37
  197. package/src/mappings/Fetch.js +0 -13
  198. package/src/mappings/FieldSearchBarFull.js +0 -50
  199. package/src/mappings/FlashList.js +0 -79
  200. package/src/mappings/FlatList.js +0 -36
  201. package/src/mappings/HeaderLarge.js +0 -29
  202. package/src/mappings/HeaderMedium.js +0 -55
  203. package/src/mappings/HeaderOverline.js +0 -55
  204. package/src/mappings/Icon.js +0 -32
  205. package/src/mappings/IconButton.js +0 -35
  206. package/src/mappings/Image.js +0 -35
  207. package/src/mappings/ImageBackground.js +0 -29
  208. package/src/mappings/KeyboardAvoidingView.js +0 -41
  209. package/src/mappings/KeyboardAwareScrollView.js +0 -50
  210. package/src/mappings/Layout.js +0 -200
  211. package/src/mappings/LinearGradient.js +0 -77
  212. package/src/mappings/MapCallout.js +0 -21
  213. package/src/mappings/MapMarker.js +0 -47
  214. package/src/mappings/MapView.js +0 -139
  215. package/src/mappings/Modal.js +0 -42
  216. package/src/mappings/NumberInput.js +0 -254
  217. package/src/mappings/Picker.js +0 -148
  218. package/src/mappings/ProgressBar.js +0 -101
  219. package/src/mappings/ProgressCircle.js +0 -109
  220. package/src/mappings/ProgressIndicator.js +0 -181
  221. package/src/mappings/RadioButton.js +0 -51
  222. package/src/mappings/RadioButtonGroup.js +0 -17
  223. package/src/mappings/RadioButtonRow.js +0 -42
  224. package/src/mappings/RowBodyIcon.js +0 -75
  225. package/src/mappings/RowHeadlineImageCaption.js +0 -167
  226. package/src/mappings/RowHeadlineImageIcon.js +0 -99
  227. package/src/mappings/SVG.js +0 -20
  228. package/src/mappings/SafeAreaView.js +0 -33
  229. package/src/mappings/ScrollView.js +0 -31
  230. package/src/mappings/Slider.js +0 -60
  231. package/src/mappings/StarRating.js +0 -43
  232. package/src/mappings/Stepper.js +0 -32
  233. package/src/mappings/Surface.js +0 -14
  234. package/src/mappings/Swiper.js +0 -62
  235. package/src/mappings/SwiperItem.js +0 -8
  236. package/src/mappings/Switch.js +0 -81
  237. package/src/mappings/Text.js +0 -251
  238. package/src/mappings/TextArea.js +0 -274
  239. package/src/mappings/TextField.js +0 -391
  240. package/src/mappings/TextInput.js +0 -402
  241. package/src/mappings/ToggleButton.js +0 -50
  242. package/src/mappings/Touchable.js +0 -60
  243. package/src/mappings/Video.js +0 -81
  244. package/src/mappings/View.js +0 -207
  245. package/src/mappings/WebView.js +0 -88
  246. package/src/styles/DarkTheme.js +0 -26
  247. package/src/styles/DefaultTheme.js +0 -111
  248. package/src/styles/fonts.js +0 -62
  249. package/src/styles/overlay.js +0 -60
  250. package/src/styles/shadow.js +0 -51
  251. package/src/theming.js +0 -3
  252. package/src/utilities.js +0 -102
@@ -1,3 +1,4 @@
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); }
1
2
  import React from "react";
2
3
  import { Pressable } from "react-native";
3
4
  export default function Touchable(_ref) {
@@ -12,22 +13,8 @@ export default function Touchable(_ref) {
12
13
  style,
13
14
  ...props
14
15
  } = _ref;
15
- return /*#__PURE__*/React.createElement(Pressable, {
16
+ return /*#__PURE__*/React.createElement(Pressable, _extends({
16
17
  disabled: disabled,
17
- onPress: onPress,
18
- delayLongPress: delayLongPress ? delayLongPress : 500,
19
- hitSlop: hitSlop ? hitSlop : 8,
20
- style: _ref2 => {
21
- let {
22
- pressed
23
- } = _ref2;
24
- return [{
25
- opacity: pressed ? activeOpacity : disabled ? disabledOpacity : 1
26
- }, style];
27
- },
28
- ...props
29
- }, children);
30
- } disabled: disabled,
31
18
  onPress: onPress,
32
19
  delayLongPress: delayLongPress ? delayLongPress : 500,
33
20
  hitSlop: hitSlop ? hitSlop : 8,
@@ -6,5 +6,4 @@ 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
10
9
  });
@@ -17,7 +17,9 @@ export const SEED_DATA = {
17
17
  }),
18
18
  fieldName: createFieldNameProp({
19
19
  defaultValue: "ratingValue",
20
+ // this is the name of the variable declared on the screen in Draftbit
20
21
  handlerPropName: "onPress",
22
+ // the change handler prop in this component
21
23
  valuePropName: "rating" // the value prop in this component
22
24
  }),
23
25
 
@@ -41,11 +43,4 @@ export const SEED_DATA = {
41
43
  defaultValue: "divider"
42
44
  })
43
45
  }
44
- };primary"
45
- }),
46
- inactiveColor: createColorProp({
47
- label: "Inactive Color",
48
- defaultValue: "divider"
49
- })
50
- }
51
46
  };
@@ -44,6 +44,7 @@ export function extractBorderAndMarginStyles(style, additionalBorderStyles, addi
44
44
  marginStyles
45
45
  };
46
46
  }
47
+
47
48
  /**
48
49
  * Merges a style object on top of another style object. In React Native,
49
50
  * keys with undefined values in a style object will still override styles
@@ -76,4 +77,4 @@ export function getValueForRadioButton(value) {
76
77
  } else {
77
78
  throw new Error(`Invalid value: ${value}`);
78
79
  }
79
- }}
80
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@draftbit/core",
3
- "version": "46.6.6",
3
+ "version": "46.6.7",
4
4
  "description": "Core (non-native) Components",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -41,7 +41,7 @@
41
41
  "dependencies": {
42
42
  "@date-io/date-fns": "^1.3.13",
43
43
  "@draftbit/react-theme-provider": "^2.1.1",
44
- "@draftbit/types": "^46.6.6",
44
+ "@draftbit/types": "^46.6.7",
45
45
  "@material-ui/core": "^4.11.0",
46
46
  "@material-ui/pickers": "^3.2.10",
47
47
  "@react-native-community/slider": "4.2.3",
@@ -91,5 +91,5 @@
91
91
  ]
92
92
  ]
93
93
  },
94
- "gitHead": "1aa46d395f6b9926de0025de6479f1aed37dc0c5"
94
+ "gitHead": "a8f9af8955bdcc2bb31aca9a406267b1ac5c8c0e"
95
95
  }
package/src/Provider.js DELETED
@@ -1,9 +0,0 @@
1
- import * as React from "react";
2
- import { ThemeProvider } from "./theming";
3
- import PortalHost from "./components/Portal/PortalHost";
4
- export default class Provider extends React.Component {
5
- render() {
6
- return (React.createElement(PortalHost, null,
7
- React.createElement(ThemeProvider, { theme: this.props.theme }, this.props.children)));
8
- }
9
- }
@@ -1,44 +0,0 @@
1
- import * as React from "react";
2
- import { View, StyleSheet, Pressable, } from "react-native";
3
- import Text from "../Text";
4
- import { withTheme } from "../../theming";
5
- import { extractStyles } from "../../utilities";
6
- const AccordionGroup = ({ label, expanded: expandedProp = false, openColor, closedColor, caretColor: caretColorProp, caretSize = 24, icon, iconSize = 24, style, children, theme, Icon, }) => {
7
- const [expanded, setExpanded] = React.useState(expandedProp);
8
- const { textStyles, viewStyles } = extractStyles(style);
9
- const expandedColor = openColor || theme.colors.primary;
10
- const collapsedColor = closedColor || theme.colors.primary;
11
- const labelColor = expanded ? expandedColor : collapsedColor;
12
- const caretColor = caretColorProp || labelColor;
13
- const handlePressAction = () => {
14
- setExpanded(!expanded);
15
- };
16
- return (React.createElement(React.Fragment, null,
17
- React.createElement(Pressable, { style: [styles.row, viewStyles], onPress: handlePressAction, accessibilityRole: "button" },
18
- icon ? (React.createElement(Icon, { name: icon, size: iconSize, color: labelColor, style: styles.icon })) : null,
19
- React.createElement(View, { style: styles.content },
20
- React.createElement(Text, { selectable: false, style: [
21
- textStyles,
22
- {
23
- color: labelColor,
24
- },
25
- ] }, label)),
26
- React.createElement(Icon, { name: expanded
27
- ? "MaterialIcons/keyboard-arrow-up"
28
- : "MaterialIcons/keyboard-arrow-down", color: caretColor, size: caretSize })),
29
- expanded ? children : null));
30
- };
31
- const styles = StyleSheet.create({
32
- row: {
33
- flexDirection: "row",
34
- alignItems: "center",
35
- },
36
- content: {
37
- flex: 1,
38
- justifyContent: "center",
39
- },
40
- icon: {
41
- marginRight: 8,
42
- },
43
- });
44
- export default withTheme(AccordionGroup);
@@ -1,32 +0,0 @@
1
- import * as React from "react";
2
- import { Pressable, StyleSheet, View, } from "react-native";
3
- import Text from "../Text";
4
- import { extractStyles } from "../../utilities";
5
- import { withTheme } from "../../theming";
6
- const AccordionItem = ({ Icon, icon, label, style, iconColor, theme, ...rest }) => {
7
- const { textStyles, viewStyles } = extractStyles(style);
8
- return (React.createElement(Pressable, { style: [styles.container, viewStyles], ...rest },
9
- React.createElement(View, { style: styles.row },
10
- icon ? (React.createElement(Icon, { name: icon, size: 24, color: iconColor || theme.colors.primary })) : null,
11
- React.createElement(View, { style: [styles.item, styles.content] },
12
- React.createElement(Text, { selectable: false, style: textStyles }, label)))));
13
- };
14
- const styles = StyleSheet.create({
15
- container: {
16
- padding: 8,
17
- },
18
- row: {
19
- flexDirection: "row",
20
- alignItems: "center",
21
- paddingLeft: 8,
22
- },
23
- item: {
24
- marginVertical: 6,
25
- paddingLeft: 8,
26
- },
27
- content: {
28
- flex: 1,
29
- justifyContent: "center",
30
- },
31
- });
32
- export default withTheme(AccordionItem);
@@ -1,2 +0,0 @@
1
- export { default as AccordionGroup } from "./AccordionGroup";
2
- export { default as AccordionItem } from "./AccordionItem";
@@ -1,45 +0,0 @@
1
- import React from "react";
2
- import { View, StyleSheet } from "react-native";
3
- import Portal from "../Portal/Portal";
4
- import Touchable from "../Touchable";
5
- import ActionSheetCancel from "./ActionSheetCancel";
6
- const ActionSheet = ({ visible = false, onClose, children }) => {
7
- return visible ? (React.createElement(Portal, null,
8
- React.createElement(Touchable, { style: styles.wrapper, onPress: onClose },
9
- React.createElement(View, { style: styles.overlay }),
10
- React.createElement(View, { style: styles.groupWrapper },
11
- React.createElement(View, { style: styles.group }, React.Children.toArray(children).filter((child) => (child === null || child === void 0 ? void 0 : child.type) !== ActionSheetCancel)),
12
- React.createElement(View, { style: styles.group }, React.Children.toArray(children).filter((child) => child.type === ActionSheetCancel)))))) : (React.createElement(React.Fragment, null));
13
- };
14
- const styles = StyleSheet.create({
15
- wrapper: {
16
- flex: 1,
17
- display: "flex",
18
- flexDirection: "column",
19
- },
20
- overlay: {
21
- position: "absolute",
22
- top: 0,
23
- left: 0,
24
- right: 0,
25
- bottom: 0,
26
- backgroundColor: "#000000",
27
- opacity: 0.3,
28
- },
29
- groupWrapper: {
30
- flex: 1,
31
- flexDirection: "column",
32
- justifyContent: "flex-end",
33
- display: "flex",
34
- marginBottom: 25,
35
- },
36
- group: {
37
- display: "flex",
38
- flexDirection: "column",
39
- borderRadius: 10,
40
- marginHorizontal: 7,
41
- marginVertical: 2.5,
42
- overflow: "hidden",
43
- },
44
- });
45
- export default ActionSheet;
@@ -1,6 +0,0 @@
1
- import React from "react";
2
- import ActionSheetItem from "./ActionSheetItem";
3
- const ActionSheetCancel = ({ label = "Cancel", color, style, onPress, }) => {
4
- return (React.createElement(ActionSheetItem, { label: label, color: color || "#FF453A", style: [style], onPress: onPress }));
5
- };
6
- export default ActionSheetCancel;
@@ -1,30 +0,0 @@
1
- import React from "react";
2
- import { Text, StyleSheet, TouchableOpacity, } from "react-native";
3
- import { extractStyles } from "../../utilities";
4
- const ActionSheetItem = ({ label, style, color, onPress, }) => {
5
- const { textStyles, viewStyles } = extractStyles(style);
6
- return (React.createElement(TouchableOpacity, { activeOpacity: 0.7, style: [styles.wrapper, viewStyles], onPress: onPress },
7
- React.createElement(Text, { style: [styles.label, textStyles, { color }] }, label)));
8
- };
9
- const styles = StyleSheet.create({
10
- wrapper: {
11
- borderBottomWidth: StyleSheet.hairlineWidth,
12
- borderBottomColor: "#CCCCCC",
13
- backgroundColor: "#F1F1F1",
14
- minHeight: 50,
15
- overflow: "hidden",
16
- display: "flex",
17
- justifyContent: "center",
18
- },
19
- label: {
20
- fontSize: 16,
21
- textAlign: "center",
22
- color: "#0A84FF",
23
- fontWeight: "500",
24
- overflow: "hidden",
25
- paddingHorizontal: 20,
26
- paddingVertical: 10,
27
- alignSelf: "center",
28
- },
29
- });
30
- export default ActionSheetItem;
@@ -1,3 +0,0 @@
1
- export { default as ActionSheet } from "./ActionSheet";
2
- export { default as ActionSheetItem } from "./ActionSheetItem";
3
- export { default as ActionSheetCancel } from "./ActionSheetCancel";
@@ -1,43 +0,0 @@
1
- import * as React from "react";
2
- import { Animated, Easing, } from "react-native";
3
- import CircularProgress from "./CircularProgress";
4
- const AnimatedProgress = Animated.createAnimatedComponent(CircularProgress);
5
- const AnimatedCircularProgress = ({ duration = 500, easing = Easing.out(Easing.ease), fill, prefill = 0, useNativeDriver = false, tintColorSecondary, onAnimationComplete, tintColor = "black", ...other }) => {
6
- const [fillAnimation] = React.useState(new Animated.Value(prefill));
7
- const animate = React.useCallback((toVal = -1, dur, ease) => {
8
- const toValue = toVal >= 0 ? toVal : fill;
9
- const dura = dur || duration;
10
- const eas = ease || easing;
11
- const useNative = useNativeDriver;
12
- const anim = Animated.timing(fillAnimation, {
13
- useNativeDriver: useNative,
14
- toValue,
15
- easing: eas,
16
- duration: dura,
17
- });
18
- anim.start(onAnimationComplete);
19
- return anim;
20
- }, [
21
- duration,
22
- easing,
23
- fill,
24
- useNativeDriver,
25
- fillAnimation,
26
- onAnimationComplete,
27
- ]);
28
- const animateColor = () => {
29
- if (!tintColorSecondary) {
30
- return tintColor;
31
- }
32
- const tintAnimation = fillAnimation.interpolate({
33
- inputRange: [0, 100],
34
- outputRange: [tintColor, tintColorSecondary],
35
- });
36
- return tintAnimation;
37
- };
38
- React.useEffect(() => {
39
- animate();
40
- }, [fill, animate]);
41
- return (React.createElement(AnimatedProgress, { ...other, style: other.style, childrenContainerStyle: other.childrenContainerStyle, fill: fillAnimation, tintColor: animateColor() }));
42
- };
43
- export default AnimatedCircularProgress;
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- import { View, StyleSheet, } from "react-native";
3
- const AspectRatio = (props) => {
4
- const [layout, setLayout] = React.useState(null);
5
- const { aspectRatio = 1, ...inputStyle } = StyleSheet.flatten(props.style) || {};
6
- const style = [inputStyle, { aspectRatio }];
7
- if (layout) {
8
- const { width = 0, height = 0 } = layout;
9
- if (width === 0) {
10
- style.push({ width: height * (1 / aspectRatio), height });
11
- }
12
- else {
13
- style.push({ width, height: width * (1 / aspectRatio) });
14
- }
15
- }
16
- return (React.createElement(View, { ...props, style: style, onLayout: ({ nativeEvent: { layout: l } }) => setLayout(l) }, props.children));
17
- };
18
- export default AspectRatio;
@@ -1,30 +0,0 @@
1
- import * as React from "react";
2
- import { View } from "react-native";
3
- import Touchable from "./Touchable";
4
- import CircleImage from "./CircleImage";
5
- import { withTheme } from "../theming";
6
- const AvatarEdit = ({ Icon, image, size = 80, onPress = () => { }, style, theme, ...rest }) => {
7
- const colorStyles = {
8
- editBackgroundColor: theme.colors.primary,
9
- editIconColor: theme.colors.surface,
10
- editBorderColor: theme.colors.surface,
11
- };
12
- const dimensions = {
13
- width: size,
14
- height: size,
15
- };
16
- return (React.createElement(View, { style: [style, dimensions], ...rest },
17
- React.createElement(Touchable, { onPress: onPress },
18
- React.createElement(CircleImage, { source: image, size: size }),
19
- React.createElement(View, { style: {
20
- position: "absolute",
21
- top: -3,
22
- right: -3,
23
- borderColor: colorStyles.editBorderColor,
24
- backgroundColor: colorStyles.editBackgroundColor,
25
- borderRadius: size * (3 / 16),
26
- padding: size * (3 / 32),
27
- } },
28
- React.createElement(Icon, { name: "MaterialIcons/edit", color: colorStyles.editIconColor, size: size * (3 / 16) })))));
29
- };
30
- export default withTheme(AvatarEdit);
@@ -1,109 +0,0 @@
1
- import * as React from "react";
2
- import { Button, Text, View, StyleSheet, Animated, } from "react-native";
3
- import Surface from "./Surface";
4
- import shadow from "../styles/shadow";
5
- import { withTheme } from "../theming";
6
- const ELEVATION = 1;
7
- const DEFAULT_MAX_WIDTH = 960;
8
- const Banner = ({ initiallyVisible = true, dismissable = true, icon, buttonColor, content, contentStyle, style, theme, Icon, ...rest }) => {
9
- const [visible, setVisible] = React.useState(initiallyVisible);
10
- React.useEffect(() => {
11
- if (initiallyVisible) {
12
- setVisible(true);
13
- }
14
- }, [initiallyVisible]);
15
- const { current: position } = React.useRef(new Animated.Value(visible ? 1 : 0));
16
- const [layout, setLayout] = React.useState({
17
- height: 0,
18
- measured: false,
19
- });
20
- React.useEffect(() => {
21
- if (visible) {
22
- // show
23
- Animated.timing(position, {
24
- duration: 250,
25
- toValue: 1,
26
- useNativeDriver: false,
27
- }).start();
28
- }
29
- else {
30
- // hide
31
- Animated.timing(position, {
32
- duration: 200,
33
- toValue: 0,
34
- useNativeDriver: false,
35
- }).start();
36
- }
37
- }, [visible, position]);
38
- const handleLayout = ({ nativeEvent }) => {
39
- const { height } = nativeEvent.layout;
40
- setLayout({ height, measured: true });
41
- };
42
- // The banner animation has 2 parts:
43
- // 1. Blank spacer element which animates its height to move the content
44
- // 2. Actual banner which animates its translateY
45
- // In initial render, we position everything normally and measure the height of the banner
46
- // Once we have the height, we apply the height to the spacer and switch the banner to position: absolute
47
- // We need this because we need to move the content below as if banner's height was being animated
48
- // However we can't animated banner's height directly as it'll also resize the content inside
49
- const height = Animated.multiply(position, layout.height);
50
- const translateY = Animated.multiply(Animated.add(position, -1), layout.height);
51
- return (React.createElement(Surface, { ...rest, style: [styles.container, shadow(ELEVATION), style] },
52
- React.createElement(View, { style: [styles.wrapper, contentStyle] },
53
- React.createElement(Animated.View, { style: { height } }),
54
- React.createElement(Animated.View, { onLayout: handleLayout, style: [
55
- layout.measured || !visible
56
- ? // If we have measured banner's height or it's invisible,
57
- // Position it absolutely, the layout will be taken care of the spacer
58
- [styles.absolute, { transform: [{ translateY }] }]
59
- : // Otherwise position it normally
60
- null,
61
- !layout.measured && !visible
62
- ? // If we haven't measured banner's height yet and it's invisible,
63
- // hide it with opacity: 0 so user doesn't see it
64
- { opacity: 0 }
65
- : null,
66
- ] },
67
- React.createElement(View, { style: [styles.content, { marginBottom: dismissable ? 0 : 16 }] },
68
- icon ? (React.createElement(View, { style: styles.icon },
69
- React.createElement(Icon, { name: icon, size: 40 }))) : null,
70
- React.createElement(Text, { style: [styles.message, { color: theme.colors.text }], accessibilityLiveRegion: visible ? "polite" : "none", accessibilityRole: "alert" }, content)),
71
- dismissable ? (React.createElement(View, { style: styles.actions },
72
- React.createElement(Button, { color: buttonColor || theme.colors.primary, title: "Close", onPress: () => setVisible(false) }))) : null))));
73
- };
74
- const styles = StyleSheet.create({
75
- container: {
76
- elevation: ELEVATION,
77
- },
78
- wrapper: {
79
- overflow: "hidden",
80
- alignSelf: "center",
81
- width: "100%",
82
- maxWidth: DEFAULT_MAX_WIDTH,
83
- },
84
- absolute: {
85
- position: "absolute",
86
- top: 0,
87
- width: "100%",
88
- },
89
- content: {
90
- flexDirection: "row",
91
- justifyContent: "flex-start",
92
- marginHorizontal: 8,
93
- marginTop: 16,
94
- marginBottom: 0,
95
- },
96
- icon: {
97
- margin: 8,
98
- },
99
- message: {
100
- flex: 1,
101
- margin: 8,
102
- },
103
- actions: {
104
- flexDirection: "row",
105
- justifyContent: "flex-end",
106
- margin: 8,
107
- },
108
- });
109
- export default withTheme(Banner);
@@ -1,114 +0,0 @@
1
- import * as React from "react";
2
- import { Text, Pressable, Platform, StyleSheet, ActivityIndicator, } from "react-native";
3
- import { withTheme } from "../theming";
4
- const CONSTANTS = {
5
- baseHeight: 42,
6
- borderRadius: 4,
7
- padding: 8,
8
- icon: 24,
9
- };
10
- function Base({ Icon, icon, title, loading, disabled, style, activeOpacity, disabledOpacity, ...props }) {
11
- const { color, fontFamily, fontWeight, fontSize, lineHeight, letterSpacing, textTransform, textAlign, textDecorationLine, textDecorationColor, textDecorationStyle, ...buttonStyles } = StyleSheet.flatten(style || {});
12
- const titleStyles = {
13
- color,
14
- fontFamily,
15
- fontWeight,
16
- fontSize,
17
- lineHeight,
18
- letterSpacing,
19
- textTransform,
20
- textAlign,
21
- textDecorationLine,
22
- textDecorationColor,
23
- textDecorationStyle,
24
- };
25
- if (textAlign === "left") {
26
- buttonStyles.justifyContent = "flex-start";
27
- }
28
- if (textAlign === "right") {
29
- buttonStyles.justifyContent = "flex-end";
30
- }
31
- return (React.createElement(Pressable, { disabled: disabled || loading, style: ({ pressed }) => {
32
- return [
33
- styles.base,
34
- {
35
- opacity: pressed ? activeOpacity : disabled ? disabledOpacity : 1,
36
- },
37
- buttonStyles,
38
- ];
39
- }, ...props },
40
- loading ? (React.createElement(ActivityIndicator, { size: "small", color: color, style: styles.loading })) : null,
41
- icon && !loading ? (React.createElement(Icon, { name: icon, color: color, style: styles.icon, size: CONSTANTS.icon })) : null,
42
- React.createElement(Text, { style: titleStyles }, title)));
43
- }
44
- const Solid = ({ style, theme, ...props }) => {
45
- return (React.createElement(Base, { style: [
46
- {
47
- color: "#FFF",
48
- borderRadius: theme.roundness,
49
- backgroundColor: theme.colors.primary,
50
- },
51
- style,
52
- ], ...props }));
53
- };
54
- const ButtonSolid = withTheme(Solid);
55
- export { ButtonSolid };
56
- const Button = withTheme(Solid);
57
- export { Button };
58
- const Outline = ({ style, theme, ...props }) => {
59
- return (React.createElement(Base, { style: [
60
- styles.outline,
61
- {
62
- borderRadius: theme.roundness,
63
- borderColor: theme.colors.primary,
64
- color: theme.colors.primary,
65
- },
66
- style,
67
- ], ...props }));
68
- };
69
- const ButtonOutline = withTheme(Outline);
70
- export { ButtonOutline };
71
- const styles = StyleSheet.create({
72
- base: {
73
- position: "relative",
74
- flexDirection: "row",
75
- alignItems: "center",
76
- justifyContent: "center",
77
- minHeight: CONSTANTS.baseHeight,
78
- paddingHorizontal: 12,
79
- fontFamily: "System",
80
- fontWeight: "700",
81
- ...Platform.select({
82
- web: {
83
- cursor: "pointer",
84
- userSelect: "none",
85
- },
86
- }),
87
- },
88
- outline: {
89
- backgroundColor: "transparent",
90
- borderWidth: 1,
91
- },
92
- bare: {
93
- backgroundColor: "transparent",
94
- padding: 0,
95
- minHeight: undefined,
96
- },
97
- loading: {
98
- marginRight: 6,
99
- },
100
- icon: {
101
- ...Platform.select({
102
- web: {
103
- marginTop: 1,
104
- marginRight: 4,
105
- alignSelf: "center",
106
- },
107
- default: {
108
- marginBottom: 2,
109
- marginRight: 4,
110
- alignSelf: "center",
111
- },
112
- }),
113
- },
114
- });
@@ -1,57 +0,0 @@
1
- import React from "react";
2
- import { StyleSheet, View, Pressable, } from "react-native";
3
- import Image from "./Image";
4
- import Surface from "./Surface";
5
- import { Title, Subtitle, Caption } from "./Typography";
6
- import { withTheme } from "../theming";
7
- import Config from "./Config";
8
- const ICON_SIZE = Config.cardIconSize;
9
- const ICON_CONTAINER_SIZE = Config.cardIconSize * 2;
10
- const ICON_CONTAINER_PADDING = Config.cardIconSize / 2 - 1;
11
- const ICON_ELEVATION = Config.cardIconElevation;
12
- export const TopRightCircleIcon = withTheme(({ Icon, icon, theme, onPress, }) => {
13
- return (React.createElement(Surface, { style: {
14
- justifyContent: "center",
15
- alignItems: "center",
16
- elevation: ICON_ELEVATION,
17
- position: "absolute",
18
- top: 12,
19
- right: 12,
20
- width: ICON_CONTAINER_SIZE,
21
- height: ICON_CONTAINER_SIZE,
22
- padding: ICON_CONTAINER_PADDING,
23
- borderRadius: ICON_CONTAINER_SIZE,
24
- backgroundColor: "rgba(0, 0, 0, 0.1)",
25
- } },
26
- React.createElement(Pressable, { disabled: !onPress, onPress: onPress, style: ({ pressed }) => {
27
- return [
28
- {
29
- opacity: pressed ? 0.8 : 1,
30
- },
31
- ];
32
- } },
33
- React.createElement(Icon, { name: icon, size: ICON_SIZE, color: theme.colors.surface }))));
34
- });
35
- const Card = ({ Icon, image = Config.cardImageUrl, title, subtitle, description, textCentered, icon, aspectRatio = 1.5, elevation = 2, style, onPress, onPressIcon, titleStyle, subtitleStyle, descriptionStyle, theme, children, }) => {
36
- const { backgroundColor: bgColor, padding, ...styles } = StyleSheet.flatten(style || {});
37
- const backgroundColor = bgColor ? bgColor : theme.colors.surface;
38
- const innerPadding = padding ? padding : 12;
39
- return (React.createElement(Surface, { style: [{ elevation, backgroundColor }, styles] },
40
- React.createElement(Pressable, { disabled: !onPress, onPress: onPress, style: ({ pressed }) => {
41
- return [
42
- {
43
- opacity: pressed ? 0.8 : 1,
44
- },
45
- ];
46
- } },
47
- React.createElement(Image, { style: { aspectRatio }, source: typeof image === "string" ? { uri: image } : image, resizeMode: "cover" }),
48
- React.createElement(View, { style: { padding: innerPadding } },
49
- React.createElement(View, { style: { alignItems: textCentered ? "center" : "flex-start" } },
50
- title || (title && title !== "") ? (React.createElement(Title, { text: title, style: titleStyle })) : null,
51
- subtitle || (subtitle && subtitle !== "") ? (React.createElement(Subtitle, { text: subtitle, style: subtitleStyle })) : null,
52
- description || (description && description !== "") ? (React.createElement(View, { style: { marginTop: 4 } },
53
- React.createElement(Caption, { text: description, style: descriptionStyle }))) : null,
54
- children)),
55
- icon ? (React.createElement(TopRightCircleIcon, { Icon: Icon, icon: icon, onPress: onPressIcon })) : null)));
56
- };
57
- export default withTheme(Card);