@draftbit/core 43.3.4-f04c6f.2 → 43.4.2-80bace.1

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 (105) hide show
  1. package/lib/commonjs/components/Accordion/AccordionGroup.js +14 -28
  2. package/lib/commonjs/components/Accordion/AccordionGroup.js.map +1 -1
  3. package/lib/commonjs/components/DeprecatedFAB.js +4 -20
  4. package/lib/commonjs/components/DeprecatedFAB.js.map +1 -1
  5. package/lib/commonjs/components/Divider.js +3 -13
  6. package/lib/commonjs/components/Divider.js.map +1 -1
  7. package/lib/commonjs/components/FAB.js +25 -7
  8. package/lib/commonjs/components/FAB.js.map +1 -1
  9. package/lib/commonjs/components/LinearGradient.js +127 -0
  10. package/lib/commonjs/components/LinearGradient.js.map +1 -0
  11. package/lib/commonjs/components/Stepper.js +9 -2
  12. package/lib/commonjs/components/Stepper.js.map +1 -1
  13. package/lib/commonjs/components/Swiper/Swiper.js +23 -1
  14. package/lib/commonjs/components/Swiper/Swiper.js.map +1 -1
  15. package/lib/commonjs/index.js +8 -0
  16. package/lib/commonjs/index.js.map +1 -1
  17. package/lib/commonjs/mappings/{AccordionGroup.js → Accordion.js} +9 -2
  18. package/lib/commonjs/mappings/Accordion.js.map +1 -0
  19. package/lib/commonjs/mappings/AccordionItem.js +1 -1
  20. package/lib/commonjs/mappings/AccordionItem.js.map +1 -1
  21. package/lib/commonjs/mappings/CustomCode.js.map +1 -1
  22. package/lib/commonjs/mappings/FAB.js.map +1 -1
  23. package/lib/commonjs/mappings/Icon.js.map +1 -1
  24. package/lib/commonjs/mappings/LinearGradient.js.map +1 -1
  25. package/lib/commonjs/mappings/RadioButtonGroup.js.map +1 -1
  26. package/lib/commonjs/mappings/RadioButtonRow.js.map +1 -1
  27. package/lib/commonjs/mappings/RowBodyIcon.js.map +1 -1
  28. package/lib/commonjs/mappings/RowHeadlineImageIcon.js.map +1 -1
  29. package/lib/commonjs/mappings/SafeAreaView.js.map +1 -1
  30. package/lib/commonjs/mappings/Stepper.js +1 -2
  31. package/lib/commonjs/mappings/Stepper.js.map +1 -1
  32. package/lib/commonjs/mappings/Swiper.js +14 -0
  33. package/lib/commonjs/mappings/Swiper.js.map +1 -1
  34. package/lib/commonjs/mappings/TextArea.js +1 -3
  35. package/lib/commonjs/mappings/TextArea.js.map +1 -1
  36. package/lib/module/components/Accordion/AccordionGroup.js +13 -28
  37. package/lib/module/components/Accordion/AccordionGroup.js.map +1 -1
  38. package/lib/module/components/FAB.js +6 -2
  39. package/lib/module/components/FAB.js.map +1 -1
  40. package/lib/module/components/LinearGradient.js +111 -0
  41. package/lib/module/components/LinearGradient.js.map +1 -0
  42. package/lib/module/components/Picker/PickerComponent.ios.js +10 -29
  43. package/lib/module/components/Picker/PickerComponent.ios.js.map +1 -1
  44. package/lib/module/components/RowBodyIcon.js.map +1 -1
  45. package/lib/module/components/Stepper.js +9 -2
  46. package/lib/module/components/Stepper.js.map +1 -1
  47. package/lib/module/components/Swiper/Swiper.js +23 -1
  48. package/lib/module/components/Swiper/Swiper.js.map +1 -1
  49. package/lib/module/index.js +1 -0
  50. package/lib/module/index.js.map +1 -1
  51. package/lib/module/mappings/{AccordionGroup.js → Accordion.js} +9 -2
  52. package/lib/module/mappings/Accordion.js.map +1 -0
  53. package/lib/module/mappings/AccordionItem.js +1 -1
  54. package/lib/module/mappings/AccordionItem.js.map +1 -1
  55. package/lib/module/mappings/BlurView.js.map +1 -1
  56. package/lib/module/mappings/Stepper.js +1 -2
  57. package/lib/module/mappings/Stepper.js.map +1 -1
  58. package/lib/module/mappings/Swiper.js +15 -1
  59. package/lib/module/mappings/Swiper.js.map +1 -1
  60. package/lib/module/mappings/TextArea.js +1 -3
  61. package/lib/module/mappings/TextArea.js.map +1 -1
  62. package/lib/typescript/src/{mappings/DeprecatedButton.d.ts → components/LinearGradient.d.ts} +47 -28
  63. package/lib/typescript/src/components/Swiper/Swiper.d.ts +5 -1
  64. package/lib/typescript/src/index.d.ts +1 -0
  65. package/lib/typescript/src/mappings/{AccordionGroup.d.ts → Accordion.d.ts} +7 -0
  66. package/lib/typescript/src/mappings/Swiper.d.ts +40 -0
  67. package/lib/typescript/src/mappings/TextArea.d.ts +0 -2
  68. package/package.json +4 -3
  69. package/src/components/Accordion/AccordionGroup.js +17 -37
  70. package/src/components/Accordion/AccordionGroup.tsx +36 -60
  71. package/src/components/FAB.js +1 -1
  72. package/src/components/FAB.tsx +6 -2
  73. package/src/components/LinearGradient.js +84 -0
  74. package/src/components/LinearGradient.tsx +119 -0
  75. package/src/components/Stepper.js +2 -2
  76. package/src/components/Stepper.tsx +4 -1
  77. package/src/components/Swiper/Swiper.js +9 -1
  78. package/src/components/Swiper/Swiper.tsx +16 -0
  79. package/src/index.js +1 -0
  80. package/src/index.tsx +1 -0
  81. package/src/mappings/{AccordionGroup.js → Accordion.js} +8 -1
  82. package/src/mappings/{AccordionGroup.ts → Accordion.ts} +8 -1
  83. package/src/mappings/AccordionItem.js +1 -1
  84. package/src/mappings/AccordionItem.ts +1 -1
  85. package/src/mappings/Stepper.js +0 -1
  86. package/src/mappings/Stepper.ts +0 -1
  87. package/src/mappings/Swiper.js +15 -1
  88. package/src/mappings/Swiper.ts +15 -0
  89. package/src/mappings/TextArea.js +0 -2
  90. package/src/mappings/TextArea.ts +0 -2
  91. package/lib/commonjs/mappings/AccordionGroup.js.map +0 -1
  92. package/lib/commonjs/mappings/DeprecatedButton.js +0 -111
  93. package/lib/commonjs/mappings/DeprecatedButton.js.map +0 -1
  94. package/lib/commonjs/mappings/DeprecatedFAB.js +0 -147
  95. package/lib/commonjs/mappings/DeprecatedFAB.js.map +0 -1
  96. package/lib/module/mappings/AccordionGroup.js.map +0 -1
  97. package/lib/module/mappings/DeprecatedButton.js +0 -102
  98. package/lib/module/mappings/DeprecatedButton.js.map +0 -1
  99. package/lib/module/mappings/DeprecatedFAB.js +0 -138
  100. package/lib/module/mappings/DeprecatedFAB.js.map +0 -1
  101. package/lib/typescript/src/mappings/DeprecatedFAB.d.ts +0 -178
  102. package/src/mappings/DeprecatedButton.js +0 -106
  103. package/src/mappings/DeprecatedButton.ts +0 -115
  104. package/src/mappings/DeprecatedFAB.js +0 -146
  105. package/src/mappings/DeprecatedFAB.ts +0 -153
@@ -13,6 +13,8 @@ var _Text = _interopRequireDefault(require("../Text"));
13
13
 
14
14
  var _theming = require("../../theming");
15
15
 
16
+ var _utilities = require("../../utilities");
17
+
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
 
18
20
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -36,48 +38,38 @@ const AccordionGroup = _ref => {
36
38
  const [expanded, setExpanded] = React.useState(expandedProp || false);
37
39
 
38
40
  const handlePressAction = () => {
39
- if (expandedProp === undefined) {
40
- setExpanded(!expanded);
41
- }
41
+ setExpanded(!expanded);
42
42
  };
43
43
 
44
44
  const expandedInternal = expandedProp !== undefined ? expandedProp : expanded;
45
45
  const expandedColor = openColor || theme.colors.primary;
46
46
  const collapsedColor = closedColor || theme.colors.primary;
47
47
  const labelColor = expanded ? expandedColor : collapsedColor;
48
+ const {
49
+ textStyles,
50
+ viewStyles
51
+ } = (0, _utilities.extractStyles)(style);
48
52
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_reactNative.Pressable, {
49
- style: [style],
53
+ style: [styles.row, viewStyles],
50
54
  onPress: handlePressAction,
51
55
  accessibilityRole: "button"
52
- }, /*#__PURE__*/React.createElement(_reactNative.View, {
53
- style: styles.row
54
56
  }, icon ? /*#__PURE__*/React.createElement(Icon, {
55
57
  name: icon,
56
58
  size: iconSize,
57
59
  color: labelColor,
58
60
  style: styles.icon
59
61
  }) : null, /*#__PURE__*/React.createElement(_reactNative.View, {
60
- style: [styles.item, styles.content]
62
+ style: styles.content
61
63
  }, /*#__PURE__*/React.createElement(_Text.default, {
62
64
  selectable: false,
63
- style: [styles.label, {
65
+ style: [{
64
66
  color: labelColor
65
- }, style]
66
- }, label)), /*#__PURE__*/React.createElement(_reactNative.View, {
67
- style: [styles.item]
68
- }, /*#__PURE__*/React.createElement(Icon, {
67
+ }, textStyles]
68
+ }, label)), /*#__PURE__*/React.createElement(Icon, {
69
69
  name: expanded ? "MaterialIcons/keyboard-arrow-up" : "MaterialIcons/keyboard-arrow-down",
70
70
  color: caretColor,
71
71
  size: 24
72
- })))), expandedInternal ? React.Children.map(children, child => {
73
- if ( /*#__PURE__*/React.isValidElement(child) && !child.props.left && !child.props.right) {
74
- return /*#__PURE__*/React.cloneElement(child, {
75
- style: child.props.style
76
- });
77
- }
78
-
79
- return child;
80
- }) : null);
72
+ })), expandedInternal ? children : null);
81
73
  };
82
74
 
83
75
  const styles = _reactNative.StyleSheet.create({
@@ -85,18 +77,12 @@ const styles = _reactNative.StyleSheet.create({
85
77
  flexDirection: "row",
86
78
  alignItems: "center"
87
79
  },
88
- label: {
89
- fontSize: 16
90
- },
91
- item: {
92
- margin: 8
93
- },
94
80
  content: {
95
81
  flex: 1,
96
82
  justifyContent: "center"
97
83
  },
98
84
  icon: {
99
- marginLeft: 8
85
+ marginRight: 8
100
86
  }
101
87
  });
102
88
 
@@ -1 +1 @@
1
- {"version":3,"sources":["AccordionGroup.tsx"],"names":["AccordionGroup","Icon","openColor","closedColor","caretColor","icon","iconSize","style","label","children","expanded","expandedProp","theme","setExpanded","React","useState","handlePressAction","undefined","expandedInternal","expandedColor","colors","primary","collapsedColor","labelColor","styles","row","item","content","color","Children","map","child","isValidElement","props","left","right","cloneElement","StyleSheet","create","flexDirection","alignItems","fontSize","margin","flex","justifyContent","marginLeft"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n StyleProp,\n TextStyle,\n Pressable,\n} from \"react-native\";\nimport Text from \"../Text\";\nimport { withTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\n\ntype Props = {\n openColor: string;\n closedColor: string;\n caretColor: string;\n icon?: string;\n iconSize: number;\n style?: StyleProp<TextStyle>;\n children: React.ReactNode;\n label: string;\n expanded?: boolean;\n theme: Theme;\n} & IconSlot;\n\nconst AccordionGroup = ({\n Icon,\n openColor,\n closedColor,\n caretColor,\n icon,\n iconSize = 24,\n style,\n label,\n children,\n expanded: expandedProp,\n theme,\n}: Props) => {\n const [expanded, setExpanded] = React.useState<boolean>(\n expandedProp || false\n );\n\n const handlePressAction = () => {\n if (expandedProp === undefined) {\n setExpanded(!expanded);\n }\n };\n\n const expandedInternal = expandedProp !== undefined ? expandedProp : expanded;\n\n const expandedColor = openColor || theme.colors.primary;\n const collapsedColor = closedColor || theme.colors.primary;\n\n const labelColor = expanded ? expandedColor : collapsedColor;\n\n return (\n <>\n <Pressable\n style={[style]}\n onPress={handlePressAction}\n accessibilityRole=\"button\"\n >\n <View style={styles.row}>\n {icon ? (\n <Icon\n name={icon}\n size={iconSize}\n color={labelColor}\n style={styles.icon}\n />\n ) : null}\n <View style={[styles.item, styles.content]}>\n <Text\n selectable={false}\n style={[\n styles.label,\n {\n color: labelColor,\n },\n style,\n ]}\n >\n {label}\n </Text>\n </View>\n <View style={[styles.item]}>\n <Icon\n name={\n expanded\n ? \"MaterialIcons/keyboard-arrow-up\"\n : \"MaterialIcons/keyboard-arrow-down\"\n }\n color={caretColor}\n size={24}\n />\n </View>\n </View>\n </Pressable>\n {expandedInternal\n ? React.Children.map(children, (child) => {\n if (\n React.isValidElement(child) &&\n !child.props.left &&\n !child.props.right\n ) {\n return React.cloneElement(child, {\n style: child.props.style,\n });\n }\n\n return child;\n })\n : null}\n </>\n );\n};\n\nconst styles = StyleSheet.create({\n row: {\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n label: {\n fontSize: 16,\n },\n item: {\n margin: 8,\n },\n content: {\n flex: 1,\n justifyContent: \"center\",\n },\n icon: {\n marginLeft: 8,\n },\n});\n\nexport default withTheme(AccordionGroup);\n"]}
1
+ {"version":3,"sources":["AccordionGroup.tsx"],"names":["AccordionGroup","Icon","openColor","closedColor","caretColor","icon","iconSize","style","label","children","expanded","expandedProp","theme","setExpanded","React","useState","handlePressAction","expandedInternal","undefined","expandedColor","colors","primary","collapsedColor","labelColor","textStyles","viewStyles","styles","row","content","color","StyleSheet","create","flexDirection","alignItems","flex","justifyContent","marginRight"],"mappings":";;;;;;;AAAA;;AACA;;AAOA;;AACA;;AAGA;;;;;;;;AAeA,MAAMA,cAAc,GAAG,QAYV;AAAA,MAZW;AACtBC,IAAAA,IADsB;AAEtBC,IAAAA,SAFsB;AAGtBC,IAAAA,WAHsB;AAItBC,IAAAA,UAJsB;AAKtBC,IAAAA,IALsB;AAMtBC,IAAAA,QAAQ,GAAG,EANW;AAOtBC,IAAAA,KAPsB;AAQtBC,IAAAA,KARsB;AAStBC,IAAAA,QATsB;AAUtBC,IAAAA,QAAQ,EAAEC,YAVY;AAWtBC,IAAAA;AAXsB,GAYX;AACX,QAAM,CAACF,QAAD,EAAWG,WAAX,IAA0BC,KAAK,CAACC,QAAN,CAC9BJ,YAAY,IAAI,KADc,CAAhC;;AAIA,QAAMK,iBAAiB,GAAG,MAAM;AAC9BH,IAAAA,WAAW,CAAC,CAACH,QAAF,CAAX;AACD,GAFD;;AAIA,QAAMO,gBAAgB,GAAGN,YAAY,KAAKO,SAAjB,GAA6BP,YAA7B,GAA4CD,QAArE;AAEA,QAAMS,aAAa,GAAGjB,SAAS,IAAIU,KAAK,CAACQ,MAAN,CAAaC,OAAhD;AACA,QAAMC,cAAc,GAAGnB,WAAW,IAAIS,KAAK,CAACQ,MAAN,CAAaC,OAAnD;AAEA,QAAME,UAAU,GAAGb,QAAQ,GAAGS,aAAH,GAAmBG,cAA9C;AAEA,QAAM;AAAEE,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAA6B,8BAAclB,KAAd,CAAnC;AAEA,sBACE,uDACE,oBAAC,sBAAD;AACE,IAAA,KAAK,EAAE,CAACmB,MAAM,CAACC,GAAR,EAAaF,UAAb,CADT;AAEE,IAAA,OAAO,EAAET,iBAFX;AAGE,IAAA,iBAAiB,EAAC;AAHpB,KAKGX,IAAI,gBACH,oBAAC,IAAD;AACE,IAAA,IAAI,EAAEA,IADR;AAEE,IAAA,IAAI,EAAEC,QAFR;AAGE,IAAA,KAAK,EAAEiB,UAHT;AAIE,IAAA,KAAK,EAAEG,MAAM,CAACrB;AAJhB,IADG,GAOD,IAZN,eAaE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAEqB,MAAM,CAACE;AAApB,kBACE,oBAAC,aAAD;AACE,IAAA,UAAU,EAAE,KADd;AAEE,IAAA,KAAK,EAAE,CACL;AACEC,MAAAA,KAAK,EAAEN;AADT,KADK,EAILC,UAJK;AAFT,KASGhB,KATH,CADF,CAbF,eA0BE,oBAAC,IAAD;AACE,IAAA,IAAI,EACFE,QAAQ,GACJ,iCADI,GAEJ,mCAJR;AAME,IAAA,KAAK,EAAEN,UANT;AAOE,IAAA,IAAI,EAAE;AAPR,IA1BF,CADF,EAqCGa,gBAAgB,GAAGR,QAAH,GAAc,IArCjC,CADF;AAyCD,CAvED;;AAyEA,MAAMiB,MAAM,GAAGI,wBAAWC,MAAX,CAAkB;AAC/BJ,EAAAA,GAAG,EAAE;AACHK,IAAAA,aAAa,EAAE,KADZ;AAEHC,IAAAA,UAAU,EAAE;AAFT,GAD0B;AAK/BL,EAAAA,OAAO,EAAE;AACPM,IAAAA,IAAI,EAAE,CADC;AAEPC,IAAAA,cAAc,EAAE;AAFT,GALsB;AAS/B9B,EAAAA,IAAI,EAAE;AACJ+B,IAAAA,WAAW,EAAE;AADT;AATyB,CAAlB,CAAf;;eAce,wBAAUpC,cAAV,C","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n StyleProp,\n TextStyle,\n Pressable,\n} from \"react-native\";\nimport Text from \"../Text\";\nimport { withTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport { extractStyles } from \"../../utilities\";\n\ntype Props = {\n openColor: string;\n closedColor: string;\n caretColor: string;\n icon?: string;\n iconSize: number;\n style?: StyleProp<TextStyle>;\n children: React.ReactNode;\n label: string;\n expanded?: boolean;\n theme: Theme;\n} & IconSlot;\n\nconst AccordionGroup = ({\n Icon,\n openColor,\n closedColor,\n caretColor,\n icon,\n iconSize = 24,\n style,\n label,\n children,\n expanded: expandedProp,\n theme,\n}: Props) => {\n const [expanded, setExpanded] = React.useState<boolean>(\n expandedProp || false\n );\n\n const handlePressAction = () => {\n setExpanded(!expanded);\n };\n\n const expandedInternal = expandedProp !== undefined ? expandedProp : expanded;\n\n const expandedColor = openColor || theme.colors.primary;\n const collapsedColor = closedColor || theme.colors.primary;\n\n const labelColor = expanded ? expandedColor : collapsedColor;\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <>\n <Pressable\n style={[styles.row, viewStyles]}\n onPress={handlePressAction}\n accessibilityRole=\"button\"\n >\n {icon ? (\n <Icon\n name={icon}\n size={iconSize}\n color={labelColor}\n style={styles.icon}\n />\n ) : null}\n <View style={styles.content}>\n <Text\n selectable={false}\n style={[\n {\n color: labelColor,\n },\n textStyles,\n ]}\n >\n {label}\n </Text>\n </View>\n <Icon\n name={\n expanded\n ? \"MaterialIcons/keyboard-arrow-up\"\n : \"MaterialIcons/keyboard-arrow-down\"\n }\n color={caretColor}\n size={24}\n />\n </Pressable>\n {expandedInternal ? children : null}\n </>\n );\n};\n\nconst styles = StyleSheet.create({\n row: {\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n content: {\n flex: 1,\n justifyContent: \"center\",\n },\n icon: {\n marginRight: 8,\n },\n});\n\nexport default withTheme(AccordionGroup);\n"]}
@@ -27,6 +27,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
27
27
 
28
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
29
 
30
+ function _extends() { _extends = Object.assign || 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); }
31
+
30
32
  const FAB = _ref => {
31
33
  let {
32
34
  Icon,
@@ -128,7 +130,7 @@ const FAB = _ref => {
128
130
  style: [{
129
131
  elevation
130
132
  }, style]
131
- }, /*#__PURE__*/React.createElement(_Touchable.default, { ...rest,
133
+ }, /*#__PURE__*/React.createElement(_Touchable.default, _extends({}, rest, {
132
134
  onPress: onPress,
133
135
  accessibilityState: {
134
136
  disabled
@@ -136,7 +138,7 @@ const FAB = _ref => {
136
138
  accessibilityRole: "button",
137
139
  disabled: disabled || loading,
138
140
  style: buttonStyles
139
- }, /*#__PURE__*/React.createElement(_reactNative.View, {
141
+ }), /*#__PURE__*/React.createElement(_reactNative.View, {
140
142
  style: styles.content
141
143
  }, icon && loading !== true ? /*#__PURE__*/React.createElement(_reactNative.View, {
142
144
  style: iconStyle
@@ -179,23 +181,5 @@ const styles = _reactNative.StyleSheet.create({
179
181
 
180
182
  var _default = (0, _theming.withTheme)(FAB);
181
183
 
182
- exports.default = _default;
183
- //# sourceMappingURL=DeprecatedFAB.js.map },
184
- icon: {
185
- alignItems: "center",
186
- justifyContent: "center",
187
- width: _Config.default.buttonIconSize
188
- },
189
- fixed: {
190
- left: 0,
191
- right: 0,
192
- bottom: 0,
193
- height: 64,
194
- borderRadius: 0
195
- }
196
- });
197
-
198
- var _default = (0, _theming.withTheme)(FAB);
199
-
200
184
  exports.default = _default;
201
185
  //# sourceMappingURL=DeprecatedFAB.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["DeprecatedFAB.js"],"names":["FAB","Icon","icon","disabled","type","loading","color","colorOverride","label","onPress","elevation","style","theme","colors","disabledOpacity","roundness","typography","rest","backgroundColor","borderColor","textColor","borderWidth","buttonColor","primary","surface","alpha","rgb","string","StyleSheet","hairlineWidth","buttonStyle","borderRadius","alignItems","justifyContent","buttonStyles","styles","button","contentStyle","content","textStyle","textAlign","iconStyle","width","Config","buttonIconSize","FABSize","height","FABBorderRadius","push","marginLeft","marginRight","margin","FABFixedHeight","alignSelf","React","createElement","Elevation","Touchable","accessibilityState","accessibilityRole","View","name","size","ActivityIndicator","Text","numberOfLines","create","borderStyle","flexDirection","fixed","left","right","bottom"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { ActivityIndicator, View, StyleSheet, } from \"react-native\";\nimport color from \"color\";\nimport Config from \"./Config\";\nimport Text from \"./Text\";\nimport Touchable from \"./Touchable\";\nimport Elevation from \"./Elevation\";\nimport { withTheme } from \"../theming\";\nconst FAB = ({ Icon, icon, disabled = false, type = \"solid\", loading = false, color: colorOverride, label, onPress, elevation = 0, style, theme: { colors, disabledOpacity, roundness, typography }, ...rest }) => {\n let backgroundColor, borderColor, textColor, borderWidth;\n const buttonColor = colorOverride || colors.primary;\n if (type === \"standard\" || type === \"extended\" || type === \"fixed\") {\n backgroundColor = buttonColor;\n if (disabled) {\n textColor = color(colors.surface).alpha(disabledOpacity).rgb().string();\n }\n else {\n textColor = colors.surface;\n }\n }\n else {\n backgroundColor = \"transparent\";\n if (disabled) {\n textColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n }\n else {\n textColor = buttonColor;\n }\n }\n if (type === \"outline\") {\n if (disabled) {\n borderColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n }\n else {\n borderColor = buttonColor;\n }\n borderWidth = StyleSheet.hairlineWidth;\n }\n else {\n borderColor = \"transparent\";\n borderWidth = 0;\n }\n const buttonStyle = {\n backgroundColor,\n borderColor,\n borderWidth,\n borderRadius: roundness,\n alignItems: \"center\",\n justifyContent: \"center\",\n };\n const buttonStyles = [styles.button, buttonStyle];\n const contentStyle = [styles.content];\n const textStyle = {\n textAlign: \"center\",\n color: textColor,\n };\n const iconStyle = [\n styles.icon,\n {\n width: Config.buttonIconSize,\n },\n ];\n if (type === \"standard\" || type === \"outline\") {\n buttonStyle.width = Config.FABSize;\n buttonStyle.height = Config.FABSize;\n buttonStyle.borderRadius = Config.FABBorderRadius;\n contentStyle.push({\n width: Config.FABSize,\n height: Config.FABSize,\n });\n }\n if (type === \"extended\" || type === \"fixed\") {\n iconStyle.push({\n marginLeft: 16,\n marginRight: -8,\n });\n textStyle.margin = 16;\n }\n if (type === \"fixed\") {\n buttonStyles.push({\n height: Config.FABFixedHeight,\n alignSelf: \"stretch\",\n });\n }\n return (React.createElement(Elevation, { style: [{ elevation }, style] },\n React.createElement(Touchable, { ...rest, onPress: onPress, accessibilityState: { disabled }, accessibilityRole: \"button\", disabled: disabled || loading, style: buttonStyles },\n React.createElement(View, { style: styles.content },\n icon && loading !== true ? (React.createElement(View, { style: iconStyle },\n React.createElement(Icon, { name: icon, size: Config.buttonIconSize, color: textColor }))) : null,\n loading ? (React.createElement(ActivityIndicator, { size: \"small\", color: textColor, style: iconStyle })) : null,\n label ? (React.createElement(Text, { numberOfLines: 1, style: [textStyle, typography.button] }, label)) : null))));\n};\nconst styles = StyleSheet.create({\n button: {\n borderStyle: \"solid\",\n },\n content: {\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignItems: \"center\",\n justifyContent: \"center\",\n width: Config.buttonIconSize,\n },\n fixed: {\n left: 0,\n right: 0,\n bottom: 0,\n height: 64,\n borderRadius: 0,\n },\n});\nexport default withTheme(FAB);\n"]}
1
+ {"version":3,"sources":["DeprecatedFAB.tsx"],"names":["FAB","Icon","icon","disabled","type","loading","color","colorOverride","label","onPress","elevation","style","theme","colors","disabledOpacity","roundness","typography","rest","backgroundColor","borderColor","textColor","borderWidth","buttonColor","primary","surface","alpha","rgb","string","StyleSheet","hairlineWidth","buttonStyle","borderRadius","alignItems","justifyContent","buttonStyles","styles","button","contentStyle","content","textStyle","textAlign","iconStyle","width","Config","buttonIconSize","FABSize","height","FABBorderRadius","push","marginLeft","marginRight","margin","FABFixedHeight","alignSelf","create","borderStyle","flexDirection","fixed","left","right","bottom"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n ActivityIndicator,\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n TextStyle,\n} from \"react-native\";\nimport color from \"color\";\nimport Config from \"./Config\";\nimport Text from \"./Text\";\nimport Touchable from \"./Touchable\";\nimport Elevation from \"./Elevation\";\nimport { withTheme } from \"../theming\";\n\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\n/**\n * A floating action button represents the primary action in an application.\n *\n * <div class=\"screenshots\">\n * <img src=\"screenshots/fab-1.png\" />\n * <img src=\"screenshots/fab-2.png\" />\n * </div>\n *\n * ## Usage\n * ```js\n * import * as React from 'react';\n * import { StyleSheet } from 'react-native';\n * import { FAB } from '@draftbit/ui';\n *\n * const MyComponent = () => (\n * <FAB\n * style={styles.fab}\n * type=\"outline\"\n * icon=\"add\"\n * onPress={() => console.log('Pressed')}\n * />\n * );\n *\n * const styles = StyleSheet.create({\n * fab: {\n * position: 'absolute',\n * margin: 16,\n * right: 0,\n * bottom: 0,\n * },\n * })\n *\n * export default MyComponent;\n * ```\n */\n\ntype Props = {\n disabled?: boolean;\n type?: \"solid\" | \"extended\" | \"outline\" | \"fixed\" | \"standard\";\n loading?: boolean;\n icon?: string;\n color?: string;\n label?: string;\n onPress: () => void;\n elevation?: number;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n} & TouchableHighlightProps &\n IconSlot;\n\nconst FAB: React.FC<Props> = ({\n Icon,\n icon,\n disabled = false,\n type = \"solid\",\n loading = false,\n color: colorOverride,\n label,\n onPress,\n elevation = 0,\n style,\n theme: { colors, disabledOpacity, roundness, typography },\n ...rest\n}) => {\n let backgroundColor, borderColor, textColor, borderWidth;\n const buttonColor = colorOverride || colors.primary;\n\n if (type === \"standard\" || type === \"extended\" || type === \"fixed\") {\n backgroundColor = buttonColor;\n\n if (disabled) {\n textColor = color(colors.surface).alpha(disabledOpacity).rgb().string();\n } else {\n textColor = colors.surface;\n }\n } else {\n backgroundColor = \"transparent\";\n\n if (disabled) {\n textColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n } else {\n textColor = buttonColor;\n }\n }\n\n if (type === \"outline\") {\n if (disabled) {\n borderColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n } else {\n borderColor = buttonColor;\n }\n borderWidth = StyleSheet.hairlineWidth;\n } else {\n borderColor = \"transparent\";\n borderWidth = 0;\n }\n\n const buttonStyle: StyleProp<ViewStyle> = {\n backgroundColor,\n borderColor,\n borderWidth,\n borderRadius: roundness,\n alignItems: \"center\",\n justifyContent: \"center\",\n };\n\n const buttonStyles: StyleProp<ViewStyle>[] = [styles.button, buttonStyle];\n\n const contentStyle: StyleProp<ViewStyle>[] = [styles.content];\n\n const textStyle: StyleProp<TextStyle> = {\n textAlign: \"center\",\n color: textColor,\n };\n\n const iconStyle: StyleProp<ViewStyle>[] = [\n styles.icon,\n {\n width: Config.buttonIconSize,\n },\n ];\n\n if (type === \"standard\" || type === \"outline\") {\n buttonStyle.width = Config.FABSize;\n buttonStyle.height = Config.FABSize;\n buttonStyle.borderRadius = Config.FABBorderRadius;\n\n contentStyle.push({\n width: Config.FABSize,\n height: Config.FABSize,\n });\n }\n\n if (type === \"extended\" || type === \"fixed\") {\n iconStyle.push({\n marginLeft: 16,\n marginRight: -8,\n });\n\n textStyle.margin = 16;\n }\n\n if (type === \"fixed\") {\n buttonStyles.push({\n height: Config.FABFixedHeight,\n alignSelf: \"stretch\",\n });\n }\n\n return (\n <Elevation style={[{ elevation }, style]}>\n <Touchable\n {...rest}\n onPress={onPress}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n disabled={disabled || loading}\n style={buttonStyles}\n >\n <View style={styles.content}>\n {icon && loading !== true ? (\n <View style={iconStyle}>\n <Icon\n name={icon}\n size={Config.buttonIconSize}\n color={textColor}\n />\n </View>\n ) : null}\n {loading ? (\n <ActivityIndicator\n size=\"small\"\n color={textColor}\n style={iconStyle}\n />\n ) : null}\n {label ? (\n <Text numberOfLines={1} style={[textStyle, typography.button]}>\n {label}\n </Text>\n ) : null}\n </View>\n </Touchable>\n </Elevation>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n borderStyle: \"solid\",\n },\n content: {\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignItems: \"center\",\n justifyContent: \"center\",\n width: Config.buttonIconSize,\n },\n fixed: {\n left: 0,\n right: 0,\n bottom: 0,\n height: 64,\n borderRadius: 0,\n },\n});\n\nexport default withTheme(FAB);\n"]}
@@ -15,6 +15,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
15
15
 
16
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
17
 
18
+ function _extends() { _extends = Object.assign || 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); }
19
+
18
20
  const Divider = _ref => {
19
21
  let {
20
22
  style,
@@ -24,19 +26,7 @@ const Divider = _ref => {
24
26
  },
25
27
  ...rest
26
28
  } = _ref;
27
- return /*#__PURE__*/React.createElement(_reactNative.View, {
28
- style: [{
29
- backgroundColor: color || colors.divider,
30
- height: _reactNative.StyleSheet.hairlineWidth
31
- }, style],
32
- ...rest
33
- });
34
- };
35
-
36
- var _default = (0, _theming.withTheme)(Divider);
37
-
38
- exports.default = _default;
39
- //# sourceMappingURL=Divider.js.map /*#__PURE__*/React.createElement(_reactNative.View, _extends({
29
+ return /*#__PURE__*/React.createElement(_reactNative.View, _extends({
40
30
  style: [{
41
31
  backgroundColor: color || colors.divider,
42
32
  height: _reactNative.StyleSheet.hairlineWidth
@@ -1 +1 @@
1
- {"version":3,"sources":["Divider.js"],"names":["Divider","style","color","theme","colors","rest","React","createElement","View","backgroundColor","divider","height","StyleSheet","hairlineWidth"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;AACA,MAAMA,OAAO,GAAG,QAAkD;AAAA,MAAjD;AAAEC,IAAAA,KAAF;AAASC,IAAAA,KAAT;AAAgBC,IAAAA,KAAK,EAAE;AAAEC,MAAAA;AAAF,KAAvB;AAAmC,OAAGC;AAAtC,GAAiD;AAC9D,sBAAQC,KAAK,CAACC,aAAN,CAAoBC,iBAApB,EAA0B;AAAEP,IAAAA,KAAK,EAAE,CACnC;AACIQ,MAAAA,eAAe,EAAEP,KAAK,IAAIE,MAAM,CAACM,OADrC;AAEIC,MAAAA,MAAM,EAAEC,wBAAWC;AAFvB,KADmC,EAKnCZ,KALmC,CAAT;AAM3B,OAAGI;AANwB,GAA1B,CAAR;AAOH,CARD;;eASe,wBAAUL,OAAV,C","sourcesContent":["import * as React from \"react\";\nimport { StyleSheet, View } from \"react-native\";\nimport { withTheme } from \"../theming\";\nconst Divider = ({ style, color, theme: { colors }, ...rest }) => {\n return (React.createElement(View, { style: [\n {\n backgroundColor: color || colors.divider,\n height: StyleSheet.hairlineWidth,\n },\n style,\n ], ...rest }));\n};\nexport default withTheme(Divider);\n"]}
1
+ {"version":3,"sources":["Divider.tsx"],"names":["Divider","style","color","theme","colors","rest","backgroundColor","divider","height","StyleSheet","hairlineWidth"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;AASA,MAAMA,OAAwB,GAAG,QAK3B;AAAA,MAL4B;AAChCC,IAAAA,KADgC;AAEhCC,IAAAA,KAFgC;AAGhCC,IAAAA,KAAK,EAAE;AAAEC,MAAAA;AAAF,KAHyB;AAIhC,OAAGC;AAJ6B,GAK5B;AACJ,sBACE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AACEC,MAAAA,eAAe,EAAEJ,KAAK,IAAIE,MAAM,CAACG,OADnC;AAEEC,MAAAA,MAAM,EAAEC,wBAAWC;AAFrB,KADK,EAKLT,KALK;AADT,KAQMI,IARN,EADF;AAYD,CAlBD;;eAoBe,wBAAUL,OAAV,C","sourcesContent":["import * as React from \"react\";\nimport { StyleSheet, View, StyleProp, ViewStyle } from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport theme from \"../styles/DefaultTheme\";\n\ntype Props = {\n style?: StyleProp<ViewStyle>;\n color?: string;\n theme: typeof theme;\n};\n\nconst Divider: React.FC<Props> = ({\n style,\n color,\n theme: { colors },\n ...rest\n}) => {\n return (\n <View\n style={[\n {\n backgroundColor: color || colors.divider,\n height: StyleSheet.hairlineWidth,\n },\n style,\n ]}\n {...rest}\n />\n );\n};\n\nexport default withTheme(Divider);\n"]}
@@ -15,8 +15,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
15
15
 
16
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
17
 
18
- function _extends() { _extends = Object.assign || 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); }
19
-
20
18
  const FAB = _ref => {
21
19
  let {
22
20
  onPress,
@@ -40,7 +38,7 @@ const FAB = _ref => {
40
38
  borderRadius: size / 2,
41
39
  overflow: "hidden"
42
40
  }, style]
43
- }, /*#__PURE__*/React.createElement(_reactNative.Pressable, _extends({
41
+ }, /*#__PURE__*/React.createElement(_reactNative.Pressable, {
44
42
  onPress: onPress,
45
43
  disabled: loading || disabled,
46
44
  android_ripple: {
@@ -58,13 +56,18 @@ const FAB = _ref => {
58
56
  borderRadius: size / 2,
59
57
  backgroundColor
60
58
  }];
61
- }
62
- }, props), /*#__PURE__*/React.createElement(_reactNative.View, null, loading ? /*#__PURE__*/React.createElement(_reactNative.ActivityIndicator, {
63
- size: "small",
59
+ },
60
+ ...props
61
+ }, /*#__PURE__*/React.createElement(_reactNative.View, null, loading ? /*#__PURE__*/React.createElement(_reactNative.ActivityIndicator, {
62
+ style: size > 50 ? {
63
+ marginTop: 2,
64
+ marginLeft: 2
65
+ } : undefined,
66
+ size: size <= 50 ? "small" : "large",
64
67
  color: color
65
68
  }) : /*#__PURE__*/React.createElement(Icon, {
66
69
  name: iconName,
67
- size: 28,
70
+ size: size,
68
71
  color: color
69
72
  }))));
70
73
  };
@@ -85,5 +88,20 @@ const styles = _reactNative.StyleSheet.create({
85
88
 
86
89
  var _default = (0, _theming.withTheme)(FAB);
87
90
 
91
+ exports.default = _default;
92
+ //# sourceMappingURL=FAB.js.map backgroundColor: "#5a45ff",
93
+ justifyContent: "center",
94
+ alignItems: "center",
95
+ ..._reactNative.Platform.select({
96
+ web: {
97
+ cursor: "pointer",
98
+ userSelect: "none"
99
+ }
100
+ })
101
+ }
102
+ });
103
+
104
+ var _default = (0, _theming.withTheme)(FAB);
105
+
88
106
  exports.default = _default;
89
107
  //# sourceMappingURL=FAB.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["FAB.tsx"],"names":["FAB","onPress","disabled","loading","iconName","style","theme","iconColor","bgColor","size","Icon","props","backgroundColor","colors","primary","color","width","height","borderRadius","overflow","radius","pressed","styles","button","opacity","StyleSheet","create","justifyContent","alignItems","Platform","select","web","cursor","userSelect"],"mappings":";;;;;;;AAAA;;AACA;;AAUA;;;;;;;;AAiBA,MAAMA,GAAoB,GAAG,QAYvB;AAAA,MAZwB;AAC5BC,IAAAA,OAD4B;AAE5BC,IAAAA,QAF4B;AAG5BC,IAAAA,OAH4B;AAI5BC,IAAAA,QAAQ,GAAG,mBAJiB;AAK5BC,IAAAA,KAL4B;AAM5BC,IAAAA,KAN4B;AAO5BC,IAAAA,SAP4B;AAQ5BC,IAAAA,OAR4B;AAS5BC,IAAAA,IAAI,GAAG,EATqB;AAU5BC,IAAAA,IAV4B;AAW5B,OAAGC;AAXyB,GAYxB;AACJ,QAAMC,eAAe,GAAGJ,OAAO,IAAIF,KAAK,CAACO,MAAN,CAAaC,OAAhD;AACA,QAAMC,KAAK,GAAGR,SAAS,IAAI,MAA3B;AAEA,sBACE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AACES,MAAAA,KAAK,EAAEP,IADT;AAEEQ,MAAAA,MAAM,EAAER,IAFV;AAGES,MAAAA,YAAY,EAAET,IAAI,GAAG,CAHvB;AAIEU,MAAAA,QAAQ,EAAE;AAJZ,KADK,EAOLd,KAPK;AADT,kBAWE,oBAAC,sBAAD;AACE,IAAA,OAAO,EAAEJ,OADX;AAEE,IAAA,QAAQ,EAAEE,OAAO,IAAID,QAFvB;AAGE,IAAA,cAAc,EAAE;AACda,MAAAA,KAAK,EAAE,MADO;AAEdK,MAAAA,MAAM,EAAEX,IAAI,GAAG;AAFD,KAHlB;AAOE,IAAA,KAAK,EAAE,SAAiB;AAAA,UAAhB;AAAEY,QAAAA;AAAF,OAAgB;AACtB,aAAO,CACLC,MAAM,CAACC,MADF,EAEL;AACEC,QAAAA,OAAO,EAAEH,OAAO,IAAInB,QAAX,GAAsB,IAAtB,GAA6B,CADxC;AAEEc,QAAAA,KAAK,EAAEP,IAFT;AAGEQ,QAAAA,MAAM,EAAER,IAHV;AAIES,QAAAA,YAAY,EAAET,IAAI,GAAG,CAJvB;AAKEG,QAAAA;AALF,OAFK,CAAP;AAUD;AAlBH,KAmBMD,KAnBN,gBAqBE,oBAAC,iBAAD,QACGR,OAAO,gBACN,oBAAC,8BAAD;AAAmB,IAAA,IAAI,EAAC,OAAxB;AAAgC,IAAA,KAAK,EAAEY;AAAvC,IADM,gBAGN,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAEX,QAAZ;AAAsB,IAAA,IAAI,EAAE,EAA5B;AAAgC,IAAA,KAAK,EAAEW;AAAvC,IAJJ,CArBF,CAXF,CADF;AA2CD,CA3DD;;AA6DA,MAAMO,MAAM,GAAGG,wBAAWC,MAAX,CAAkB;AAC/BH,EAAAA,MAAM,EAAE;AACNX,IAAAA,eAAe,EAAE,SADX;AAENe,IAAAA,cAAc,EAAE,QAFV;AAGNC,IAAAA,UAAU,EAAE,QAHN;AAIN,OAAGC,sBAASC,MAAT,CAAgB;AACjBC,MAAAA,GAAG,EAAE;AACHC,QAAAA,MAAM,EAAE,SADL;AAEHC,QAAAA,UAAU,EAAE;AAFT;AADY,KAAhB;AAJG;AADuB,CAAlB,CAAf;;eAce,wBAAUjC,GAAV,C","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n Pressable,\n ActivityIndicator,\n StyleProp,\n ViewStyle,\n PressableProps,\n Platform,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\ntype Props = {\n disabled?: boolean;\n loading?: boolean;\n size?: number;\n bgColor?: string;\n iconColor?: string;\n iconName?: string;\n onPress: () => void;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n} & PressableProps &\n IconSlot;\n\nconst FAB: React.FC<Props> = ({\n onPress,\n disabled,\n loading,\n iconName = \"MaterialIcons/add\",\n style,\n theme,\n iconColor,\n bgColor,\n size = 50,\n Icon,\n ...props\n}) => {\n const backgroundColor = bgColor || theme.colors.primary;\n const color = iconColor || \"#FFF\";\n\n return (\n <View\n style={[\n {\n width: size,\n height: size,\n borderRadius: size / 2,\n overflow: \"hidden\",\n },\n style,\n ]}\n >\n <Pressable\n onPress={onPress}\n disabled={loading || disabled}\n android_ripple={{\n color: \"#333\",\n radius: size / 4,\n }}\n style={({ pressed }) => {\n return [\n styles.button,\n {\n opacity: pressed || disabled ? 0.75 : 1,\n width: size,\n height: size,\n borderRadius: size / 2,\n backgroundColor,\n },\n ];\n }}\n {...props}\n >\n <View>\n {loading ? (\n <ActivityIndicator size=\"small\" color={color} />\n ) : (\n <Icon name={iconName} size={28} color={color} />\n )}\n </View>\n </Pressable>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n backgroundColor: \"#5a45ff\",\n justifyContent: \"center\",\n alignItems: \"center\",\n ...Platform.select({\n web: {\n cursor: \"pointer\",\n userSelect: \"none\",\n },\n }),\n },\n});\n\nexport default withTheme(FAB);\n"]}
1
+ {"version":3,"sources":["FAB.js"],"names":["FAB","onPress","disabled","loading","iconName","style","theme","iconColor","bgColor","size","Icon","props","backgroundColor","colors","primary","color","React","createElement","View","width","height","borderRadius","overflow","Pressable","android_ripple","radius","pressed","styles","button","opacity","ActivityIndicator","marginTop","marginLeft","undefined","name","StyleSheet","create","justifyContent","alignItems","Platform","select","web","cursor","userSelect"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;AACA,MAAMA,GAAG,GAAG,QAAiI;AAAA,MAAhI;AAAEC,IAAAA,OAAF;AAAWC,IAAAA,QAAX;AAAqBC,IAAAA,OAArB;AAA8BC,IAAAA,QAAQ,GAAG,mBAAzC;AAA8DC,IAAAA,KAA9D;AAAqEC,IAAAA,KAArE;AAA4EC,IAAAA,SAA5E;AAAuFC,IAAAA,OAAvF;AAAgGC,IAAAA,IAAI,GAAG,EAAvG;AAA2GC,IAAAA,IAA3G;AAAiH,OAAGC;AAApH,GAAgI;AACzI,QAAMC,eAAe,GAAGJ,OAAO,IAAIF,KAAK,CAACO,MAAN,CAAaC,OAAhD;AACA,QAAMC,KAAK,GAAGR,SAAS,IAAI,MAA3B;AACA,sBAAQS,KAAK,CAACC,aAAN,CAAoBC,iBAApB,EAA0B;AAAEb,IAAAA,KAAK,EAAE,CACnC;AACIc,MAAAA,KAAK,EAAEV,IADX;AAEIW,MAAAA,MAAM,EAAEX,IAFZ;AAGIY,MAAAA,YAAY,EAAEZ,IAAI,GAAG,CAHzB;AAIIa,MAAAA,QAAQ,EAAE;AAJd,KADmC,EAOnCjB,KAPmC;AAAT,GAA1B,eASJW,KAAK,CAACC,aAAN,CAAoBM,sBAApB,EAA+B;AAAEtB,IAAAA,OAAO,EAAEA,OAAX;AAAoBC,IAAAA,QAAQ,EAAEC,OAAO,IAAID,QAAzC;AAAmDsB,IAAAA,cAAc,EAAE;AAC1FT,MAAAA,KAAK,EAAE,MADmF;AAE1FU,MAAAA,MAAM,EAAEhB,IAAI,GAAG;AAF2E,KAAnE;AAGxBJ,IAAAA,KAAK,EAAE,SAAiB;AAAA,UAAhB;AAAEqB,QAAAA;AAAF,OAAgB;AACvB,aAAO,CACHC,MAAM,CAACC,MADJ,EAEH;AACIC,QAAAA,OAAO,EAAEH,OAAO,IAAIxB,QAAX,GAAsB,IAAtB,GAA6B,CAD1C;AAEIiB,QAAAA,KAAK,EAAEV,IAFX;AAGIW,QAAAA,MAAM,EAAEX,IAHZ;AAIIY,QAAAA,YAAY,EAAEZ,IAAI,GAAG,CAJzB;AAKIG,QAAAA;AALJ,OAFG,CAAP;AAUH,KAd0B;AAcxB,OAAGD;AAdqB,GAA/B,eAeIK,KAAK,CAACC,aAAN,CAAoBC,iBAApB,EAA0B,IAA1B,EAAgCf,OAAO,gBAAIa,KAAK,CAACC,aAAN,CAAoBa,8BAApB,EAAuC;AAAEzB,IAAAA,KAAK,EAAEI,IAAI,GAAG,EAAP,GAAY;AAAEsB,MAAAA,SAAS,EAAE,CAAb;AAAgBC,MAAAA,UAAU,EAAE;AAA5B,KAAZ,GAA8CC,SAAvD;AAAkExB,IAAAA,IAAI,EAAEA,IAAI,IAAI,EAAR,GAAa,OAAb,GAAuB,OAA/F;AAAwGM,IAAAA,KAAK,EAAEA;AAA/G,GAAvC,CAAJ,gBAAuKC,KAAK,CAACC,aAAN,CAAoBP,IAApB,EAA0B;AAAEwB,IAAAA,IAAI,EAAE9B,QAAR;AAAkBK,IAAAA,IAAI,EAAEA,IAAxB;AAA8BM,IAAAA,KAAK,EAAEA;AAArC,GAA1B,CAA9M,CAfJ,CATI,CAAR;AAyBH,CA5BD;;AA6BA,MAAMY,MAAM,GAAGQ,wBAAWC,MAAX,CAAkB;AAC7BR,EAAAA,MAAM,EAAE;AACJhB,IAAAA,eAAe,EAAE,SADb;AAEJyB,IAAAA,cAAc,EAAE,QAFZ;AAGJC,IAAAA,UAAU,EAAE,QAHR;AAIJ,OAAGC,sBAASC,MAAT,CAAgB;AACfC,MAAAA,GAAG,EAAE;AACDC,QAAAA,MAAM,EAAE,SADP;AAEDC,QAAAA,UAAU,EAAE;AAFX;AADU,KAAhB;AAJC;AADqB,CAAlB,CAAf;;eAae,wBAAU3C,GAAV,C","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet, Pressable, ActivityIndicator, Platform, } from \"react-native\";\nimport { withTheme } from \"../theming\";\nconst FAB = ({ onPress, disabled, loading, iconName = \"MaterialIcons/add\", style, theme, iconColor, bgColor, size = 50, Icon, ...props }) => {\n const backgroundColor = bgColor || theme.colors.primary;\n const color = iconColor || \"#FFF\";\n return (React.createElement(View, { style: [\n {\n width: size,\n height: size,\n borderRadius: size / 2,\n overflow: \"hidden\",\n },\n style,\n ] },\n React.createElement(Pressable, { onPress: onPress, disabled: loading || disabled, android_ripple: {\n color: \"#333\",\n radius: size / 4,\n }, style: ({ pressed }) => {\n return [\n styles.button,\n {\n opacity: pressed || disabled ? 0.75 : 1,\n width: size,\n height: size,\n borderRadius: size / 2,\n backgroundColor,\n },\n ];\n }, ...props },\n React.createElement(View, null, loading ? (React.createElement(ActivityIndicator, { style: size > 50 ? { marginTop: 2, marginLeft: 2 } : undefined, size: size <= 50 ? \"small\" : \"large\", color: color })) : (React.createElement(Icon, { name: iconName, size: size, color: color }))))));\n};\nconst styles = StyleSheet.create({\n button: {\n backgroundColor: \"#5a45ff\",\n justifyContent: \"center\",\n alignItems: \"center\",\n ...Platform.select({\n web: {\n cursor: \"pointer\",\n userSelect: \"none\",\n },\n }),\n },\n});\nexport default withTheme(FAB);\n"]}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.SEED_DATA = void 0;
7
+
8
+ var React = _interopRequireWildcard(require("react"));
9
+
10
+ var _expoLinearGradient = require("expo-linear-gradient");
11
+
12
+ var _utilities = require("../utilities");
13
+
14
+ var _types = require("@draftbit/types");
15
+
16
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
+
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+
20
+ const LinearGradientComponent = _ref => {
21
+ let {
22
+ children,
23
+ color1,
24
+ color2,
25
+ color3 = undefined,
26
+ startX = 0,
27
+ startY = 0,
28
+ endX = 100,
29
+ endY = 0,
30
+ style
31
+ } = _ref;
32
+ const {
33
+ viewStyles
34
+ } = (0, _utilities.extractStyles)(style);
35
+ const colors = [color1, color2, color3].filter(color => color);
36
+ const start = {
37
+ x: startX / 100,
38
+ y: startY / 100
39
+ };
40
+ const end = {
41
+ x: endX / 100,
42
+ y: endY / 100
43
+ };
44
+ return /*#__PURE__*/React.createElement(_expoLinearGradient.LinearGradient, {
45
+ colors: colors,
46
+ start: start,
47
+ end: end,
48
+ style: viewStyles
49
+ }, children);
50
+ };
51
+
52
+ var _default = LinearGradientComponent;
53
+ exports.default = _default;
54
+ const SEED_DATA = {
55
+ name: "LinearGradient",
56
+ tag: "LinearGradient",
57
+ description: "Linear Gradient Component",
58
+ props: {
59
+ color1: (0, _types.createColorProp)({
60
+ label: "Color 1"
61
+ }),
62
+ color2: (0, _types.createColorProp)({
63
+ label: "Color 2"
64
+ }),
65
+ color3: (0, _types.createColorProp)({
66
+ label: "Color 3"
67
+ }),
68
+ startX: {
69
+ group: _types.GROUPS.basic,
70
+ label: "Start X",
71
+ description: "Start position from Left",
72
+ editable: true,
73
+ required: false,
74
+ defaultValue: 0,
75
+ min: 0,
76
+ max: 100,
77
+ step: 1,
78
+ precision: 0,
79
+ formType: _types.FORM_TYPES.number,
80
+ propType: _types.PROP_TYPES.NUMBER
81
+ },
82
+ startY: {
83
+ group: _types.GROUPS.basic,
84
+ label: "Start Y",
85
+ description: "Start position from Top",
86
+ editable: true,
87
+ required: false,
88
+ defaultValue: 0,
89
+ min: 0,
90
+ max: 100,
91
+ step: 1,
92
+ precision: 0,
93
+ formType: _types.FORM_TYPES.number,
94
+ propType: _types.PROP_TYPES.NUMBER
95
+ },
96
+ endX: {
97
+ group: _types.GROUPS.basic,
98
+ label: "End Y",
99
+ description: "End position from Right",
100
+ editable: true,
101
+ required: false,
102
+ defaultValue: 100,
103
+ min: 0,
104
+ max: 100,
105
+ step: 1,
106
+ precision: 0,
107
+ formType: _types.FORM_TYPES.number,
108
+ propType: _types.PROP_TYPES.NUMBER
109
+ },
110
+ endY: {
111
+ group: _types.GROUPS.basic,
112
+ label: "End Y",
113
+ description: "End position from Bottom",
114
+ editable: true,
115
+ required: false,
116
+ defaultValue: 100,
117
+ min: 0,
118
+ max: 100,
119
+ step: 1,
120
+ precision: 0,
121
+ formType: _types.FORM_TYPES.number,
122
+ propType: _types.PROP_TYPES.NUMBER
123
+ }
124
+ }
125
+ };
126
+ exports.SEED_DATA = SEED_DATA;
127
+ //# sourceMappingURL=LinearGradient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["LinearGradient.tsx"],"names":["LinearGradientComponent","children","color1","color2","color3","undefined","startX","startY","endX","endY","style","viewStyles","colors","filter","color","start","x","y","end","SEED_DATA","name","tag","description","props","label","group","GROUPS","basic","editable","required","defaultValue","min","max","step","precision","formType","FORM_TYPES","number","propType","PROP_TYPES","NUMBER"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { StyleProp, ViewStyle } from \"react-native\";\nimport { LinearGradient } from \"expo-linear-gradient\";\nimport { extractStyles } from \"../utilities\";\nimport {\n createColorProp,\n FORM_TYPES,\n GROUPS,\n PROP_TYPES,\n} from \"@draftbit/types\";\n\ntype LinearGradientComponentProps = {\n color1: string;\n color2: string;\n color3?: string;\n startX: number;\n startY: number;\n endX: number;\n endY: number;\n children?: React.ReactNode;\n style?: StyleProp<ViewStyle>;\n};\n\nconst LinearGradientComponent = ({\n children,\n color1,\n color2,\n color3 = undefined,\n startX = 0,\n startY = 0,\n endX = 100,\n endY = 0,\n style,\n}: LinearGradientComponentProps) => {\n const { viewStyles } = extractStyles(style);\n const colors = [color1, color2, color3].filter((color) => color) as string[];\n const start = { x: startX / 100, y: startY / 100 };\n const end = { x: endX / 100, y: endY / 100 };\n return (\n <LinearGradient colors={colors} start={start} end={end} style={viewStyles}>\n {children}\n </LinearGradient>\n );\n};\n\nexport default LinearGradientComponent;\n\nexport const SEED_DATA = {\n name: \"LinearGradient\",\n tag: \"LinearGradient\",\n description: \"Linear Gradient Component\",\n props: {\n color1: createColorProp({\n label: \"Color 1\",\n }),\n color2: createColorProp({\n label: \"Color 2\",\n }),\n color3: createColorProp({\n label: \"Color 3\",\n }),\n startX: {\n group: GROUPS.basic,\n label: \"Start X\",\n description: \"Start position from Left\",\n editable: true,\n required: false,\n defaultValue: 0,\n min: 0,\n max: 100,\n step: 1,\n precision: 0,\n formType: FORM_TYPES.number,\n propType: PROP_TYPES.NUMBER,\n },\n startY: {\n group: GROUPS.basic,\n label: \"Start Y\",\n description: \"Start position from Top\",\n editable: true,\n required: false,\n defaultValue: 0,\n min: 0,\n max: 100,\n step: 1,\n precision: 0,\n formType: FORM_TYPES.number,\n propType: PROP_TYPES.NUMBER,\n },\n endX: {\n group: GROUPS.basic,\n label: \"End Y\",\n description: \"End position from Right\",\n editable: true,\n required: false,\n defaultValue: 100,\n min: 0,\n max: 100,\n step: 1,\n precision: 0,\n formType: FORM_TYPES.number,\n propType: PROP_TYPES.NUMBER,\n },\n endY: {\n group: GROUPS.basic,\n label: \"End Y\",\n description: \"End position from Bottom\",\n editable: true,\n required: false,\n defaultValue: 100,\n min: 0,\n max: 100,\n step: 1,\n precision: 0,\n formType: FORM_TYPES.number,\n propType: PROP_TYPES.NUMBER,\n },\n },\n};\n"]}
@@ -85,7 +85,10 @@ const Stepper = _ref => {
85
85
  onPress: handleMinus,
86
86
  size: iconSize,
87
87
  color: iconColor,
88
- disabled: stateValue === 0
88
+ disabled: stateValue === min,
89
+ style: stateValue === min ? {
90
+ opacity: 0.5
91
+ } : {}
89
92
  }), /*#__PURE__*/React.createElement(_reactNative.Text, {
90
93
  style: [typography.body1, {
91
94
  textAlign: "center",
@@ -98,7 +101,11 @@ const Stepper = _ref => {
98
101
  icon: "MaterialIcons/add",
99
102
  onPress: handlePlus,
100
103
  size: iconSize,
101
- color: iconColor
104
+ color: iconColor,
105
+ disabled: stateValue === max,
106
+ style: stateValue === max ? {
107
+ opacity: 0.5
108
+ } : {}
102
109
  }));
103
110
  };
104
111
 
@@ -1 +1 @@
1
- {"version":3,"sources":["Stepper.tsx"],"names":["Stepper","Icon","value","min","max","style","onChange","defaultValue","theme","colors","typography","roundness","iconSize","iconColor","strong","borderRadius","typeStyle","stateValue","setStateValue","React","useState","useEffect","newValue","handleMinus","useCallback","handlePlus","flexDirection","body1","textAlign","alignSelf","color","medium","marginHorizontal"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, Text, StyleProp, ViewStyle, TextStyle } from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\nimport IconButton from \"./IconButton\";\nimport isNumber from \"lodash.isnumber\";\n\ntype Props = {\n value?: number;\n min?: number;\n max?: number;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n onChange?: (value: number) => void;\n defaultValue?: number;\n iconSize?: number;\n iconColor?: string;\n borderRadius?: number;\n typeStyle?: StyleProp<TextStyle>;\n} & IconSlot;\n\nconst Stepper: React.FC<Props> = ({\n Icon,\n value,\n min,\n max,\n style,\n onChange,\n defaultValue,\n theme: { colors, typography, roundness },\n iconSize = 24,\n iconColor = colors.strong,\n borderRadius = roundness,\n typeStyle,\n}) => {\n const [stateValue, setStateValue] = React.useState(\n value || defaultValue || 0\n );\n\n React.useEffect(() => {\n if (value || value === 0) {\n onChange && onChange(stateValue);\n }\n }, [onChange, stateValue, value]);\n\n React.useEffect(() => {\n let newValue = value || defaultValue || 0;\n if (isNumber(max) && newValue > max) {\n newValue = max;\n }\n if (isNumber(min) && newValue < min) {\n newValue = min;\n }\n setStateValue(newValue);\n }, [defaultValue, value, min, max]);\n\n const handleMinus = React.useCallback(() => {\n if (isNumber(min) && value === min) {\n return;\n }\n setStateValue(stateValue - 1);\n }, [min, stateValue, value]);\n\n const handlePlus = React.useCallback(() => {\n if (isNumber(max) && value === max) {\n return;\n }\n setStateValue(stateValue + 1);\n }, [max, stateValue, value]);\n\n return (\n <View\n style={[\n { flexDirection: \"row\" },\n style,\n borderRadius ? { borderRadius } : {},\n ]}\n >\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/remove\"\n onPress={handleMinus}\n size={iconSize}\n color={iconColor}\n disabled={stateValue === 0}\n />\n <Text\n style={[\n typography.body1,\n {\n textAlign: \"center\",\n alignSelf: \"center\",\n color: colors.medium,\n marginHorizontal: 8,\n },\n typeStyle,\n ]}\n >\n {value || stateValue}\n </Text>\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/add\"\n onPress={handlePlus}\n size={iconSize}\n color={iconColor}\n />\n </View>\n );\n};\n\nexport default withTheme(Stepper);\n"]}
1
+ {"version":3,"sources":["Stepper.tsx"],"names":["Stepper","Icon","value","min","max","style","onChange","defaultValue","theme","colors","typography","roundness","iconSize","iconColor","strong","borderRadius","typeStyle","stateValue","setStateValue","React","useState","useEffect","newValue","handleMinus","useCallback","handlePlus","flexDirection","opacity","body1","textAlign","alignSelf","color","medium","marginHorizontal"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, Text, StyleProp, ViewStyle, TextStyle } from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\nimport IconButton from \"./IconButton\";\nimport isNumber from \"lodash.isnumber\";\n\ntype Props = {\n value?: number;\n min?: number;\n max?: number;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n onChange?: (value: number) => void;\n defaultValue?: number;\n iconSize?: number;\n iconColor?: string;\n borderRadius?: number;\n typeStyle?: StyleProp<TextStyle>;\n} & IconSlot;\n\nconst Stepper: React.FC<Props> = ({\n Icon,\n value,\n min,\n max,\n style,\n onChange,\n defaultValue,\n theme: { colors, typography, roundness },\n iconSize = 24,\n iconColor = colors.strong,\n borderRadius = roundness,\n typeStyle,\n}) => {\n const [stateValue, setStateValue] = React.useState(\n value || defaultValue || 0\n );\n\n React.useEffect(() => {\n if (value || value === 0) {\n onChange && onChange(stateValue);\n }\n }, [onChange, stateValue, value]);\n\n React.useEffect(() => {\n let newValue = value || defaultValue || 0;\n if (isNumber(max) && newValue > max) {\n newValue = max;\n }\n if (isNumber(min) && newValue < min) {\n newValue = min;\n }\n setStateValue(newValue);\n }, [defaultValue, value, min, max]);\n\n const handleMinus = React.useCallback(() => {\n if (isNumber(min) && value === min) {\n return;\n }\n setStateValue(stateValue - 1);\n }, [min, stateValue, value]);\n\n const handlePlus = React.useCallback(() => {\n if (isNumber(max) && value === max) {\n return;\n }\n setStateValue(stateValue + 1);\n }, [max, stateValue, value]);\n\n return (\n <View\n style={[\n { flexDirection: \"row\" },\n style,\n borderRadius ? { borderRadius } : {},\n ]}\n >\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/remove\"\n onPress={handleMinus}\n size={iconSize}\n color={iconColor}\n disabled={stateValue === min}\n style={stateValue === min ? { opacity: 0.5 } : {}}\n />\n <Text\n style={[\n typography.body1,\n {\n textAlign: \"center\",\n alignSelf: \"center\",\n color: colors.medium,\n marginHorizontal: 8,\n },\n typeStyle,\n ]}\n >\n {value || stateValue}\n </Text>\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/add\"\n onPress={handlePlus}\n size={iconSize}\n color={iconColor}\n disabled={stateValue === max}\n style={stateValue === max ? { opacity: 0.5 } : {}}\n />\n </View>\n );\n};\n\nexport default withTheme(Stepper);\n"]}
@@ -21,7 +21,11 @@ const Swiper = _ref => {
21
21
  from = 0,
22
22
  prevTitle = "",
23
23
  nextTitle = "",
24
+ prevTitleColor,
25
+ nextTitleColor,
24
26
  dotsTouchable = true,
27
+ dotColor,
28
+ dotActiveColor,
25
29
  children,
26
30
  style
27
31
  } = _ref;
@@ -35,7 +39,25 @@ const Swiper = _ref => {
35
39
  controlsProps: {
36
40
  prevTitle,
37
41
  nextTitle,
38
- dotsTouchable
42
+ prevTitleStyle: {
43
+ color: prevTitleColor
44
+ },
45
+ nextTitleStyle: {
46
+ color: nextTitleColor
47
+ },
48
+ dotsTouchable,
49
+ ...(dotColor ? {
50
+ dotProps: {
51
+ badgeStyle: {
52
+ backgroundColor: dotColor
53
+ }
54
+ }
55
+ } : {}),
56
+ ...(dotActiveColor ? {
57
+ dotActiveStyle: {
58
+ backgroundColor: dotActiveColor
59
+ }
60
+ } : {})
39
61
  }
40
62
  }, children));
41
63
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["Swiper.tsx"],"names":["Swiper","vertical","loop","timeout","from","prevTitle","nextTitle","dotsTouchable","children","style"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;AAcA,MAAMA,MAAM,GAAG;AAAA,MAAC;AACdC,IAAAA,QAAQ,GAAG,KADG;AAEdC,IAAAA,IAAI,GAAG,KAFO;AAGdC,IAAAA,OAAO,GAAG,CAHI;AAIdC,IAAAA,IAAI,GAAG,CAJO;AAKdC,IAAAA,SAAS,GAAG,EALE;AAMdC,IAAAA,SAAS,GAAG,EANE;AAOdC,IAAAA,aAAa,GAAG,IAPF;AAQdC,IAAAA,QARc;AASdC,IAAAA;AATc,GAAD;AAAA,sBAWb,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEA;AAAb,kBACE,6BAAC,6BAAD;AACE,IAAA,IAAI,EAAEL,IADR;AAEE,IAAA,IAAI,EAAEF,IAFR;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,QAAQ,EAAEF,QAJZ;AAKE,IAAA,aAAa,EAAE;AACbI,MAAAA,SADa;AAEbC,MAAAA,SAFa;AAGbC,MAAAA;AAHa;AALjB,KAWGC,QAXH,CADF,CAXa;AAAA,CAAf;;eA4BeR,M","sourcesContent":["import React from \"react\";\nimport { View, StyleProp, ViewStyle } from \"react-native\";\nimport SwiperComponent from \"react-native-web-swiper\";\n\nexport interface SwiperProps {\n vertical?: boolean;\n loop?: boolean;\n from?: number;\n timeout?: number;\n prevTitle?: string;\n nextTitle?: string;\n dotsTouchable?: boolean;\n children: React.ReactNode;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Swiper = ({\n vertical = false,\n loop = false,\n timeout = 0,\n from = 0,\n prevTitle = \"\",\n nextTitle = \"\",\n dotsTouchable = true,\n children,\n style,\n}: SwiperProps) => (\n <View style={style}>\n <SwiperComponent\n from={from}\n loop={loop}\n timeout={timeout}\n vertical={vertical}\n controlsProps={{\n prevTitle,\n nextTitle,\n dotsTouchable,\n }}\n >\n {children}\n </SwiperComponent>\n </View>\n);\n\nexport default Swiper;\n"]}
1
+ {"version":3,"sources":["Swiper.tsx"],"names":["Swiper","vertical","loop","timeout","from","prevTitle","nextTitle","prevTitleColor","nextTitleColor","dotsTouchable","dotColor","dotActiveColor","children","style","prevTitleStyle","color","nextTitleStyle","dotProps","badgeStyle","backgroundColor","dotActiveStyle"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;AAkBA,MAAMA,MAAM,GAAG;AAAA,MAAC;AACdC,IAAAA,QAAQ,GAAG,KADG;AAEdC,IAAAA,IAAI,GAAG,KAFO;AAGdC,IAAAA,OAAO,GAAG,CAHI;AAIdC,IAAAA,IAAI,GAAG,CAJO;AAKdC,IAAAA,SAAS,GAAG,EALE;AAMdC,IAAAA,SAAS,GAAG,EANE;AAOdC,IAAAA,cAPc;AAQdC,IAAAA,cARc;AASdC,IAAAA,aAAa,GAAG,IATF;AAUdC,IAAAA,QAVc;AAWdC,IAAAA,cAXc;AAYdC,IAAAA,QAZc;AAadC,IAAAA;AAbc,GAAD;AAAA,sBAeb,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEA;AAAb,kBACE,6BAAC,6BAAD;AACE,IAAA,IAAI,EAAET,IADR;AAEE,IAAA,IAAI,EAAEF,IAFR;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,QAAQ,EAAEF,QAJZ;AAKE,IAAA,aAAa,EAAE;AACbI,MAAAA,SADa;AAEbC,MAAAA,SAFa;AAGbQ,MAAAA,cAAc,EAAE;AAAEC,QAAAA,KAAK,EAAER;AAAT,OAHH;AAIbS,MAAAA,cAAc,EAAE;AAAED,QAAAA,KAAK,EAAEP;AAAT,OAJH;AAKbC,MAAAA,aALa;AAMb,UAAIC,QAAQ,GACR;AAAEO,QAAAA,QAAQ,EAAE;AAAEC,UAAAA,UAAU,EAAE;AAAEC,YAAAA,eAAe,EAAET;AAAnB;AAAd;AAAZ,OADQ,GAER,EAFJ,CANa;AASb,UAAIC,cAAc,GACd;AAAES,QAAAA,cAAc,EAAE;AAAED,UAAAA,eAAe,EAAER;AAAnB;AAAlB,OADc,GAEd,EAFJ;AATa;AALjB,KAmBGC,QAnBH,CADF,CAfa;AAAA,CAAf;;eAwCeZ,M","sourcesContent":["import React from \"react\";\nimport { View, StyleProp, ViewStyle } from \"react-native\";\nimport SwiperComponent from \"react-native-web-swiper\";\n\nexport interface SwiperProps {\n vertical?: boolean;\n loop?: boolean;\n from?: number;\n timeout?: number;\n prevTitle?: string;\n nextTitle?: string;\n prevTitleColor?: string;\n nextTitleColor?: string;\n dotsTouchable?: boolean;\n dotColor?: string;\n dotActiveColor?: string;\n children: React.ReactNode;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Swiper = ({\n vertical = false,\n loop = false,\n timeout = 0,\n from = 0,\n prevTitle = \"\",\n nextTitle = \"\",\n prevTitleColor,\n nextTitleColor,\n dotsTouchable = true,\n dotColor,\n dotActiveColor,\n children,\n style,\n}: SwiperProps) => (\n <View style={style}>\n <SwiperComponent\n from={from}\n loop={loop}\n timeout={timeout}\n vertical={vertical}\n controlsProps={{\n prevTitle,\n nextTitle,\n prevTitleStyle: { color: prevTitleColor },\n nextTitleStyle: { color: nextTitleColor },\n dotsTouchable,\n ...(dotColor\n ? { dotProps: { badgeStyle: { backgroundColor: dotColor } } }\n : {}),\n ...(dotActiveColor\n ? { dotActiveStyle: { backgroundColor: dotActiveColor } }\n : {}),\n }}\n >\n {children}\n </SwiperComponent>\n </View>\n);\n\nexport default Swiper;\n"]}