@hero-design/rn 7.0.4 → 7.1.0

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 (85) hide show
  1. package/.expo/packager-info.json +1 -1
  2. package/babel.config.js +1 -1
  3. package/es/index.js +170 -49
  4. package/lib/assets/fonts/hero-icons.ttf +0 -0
  5. package/lib/index.js +169 -46
  6. package/package.json +6 -4
  7. package/playground/components/Card.tsx +75 -92
  8. package/playground/components/FAB.tsx +49 -0
  9. package/playground/index.tsx +3 -1
  10. package/rollup.config.js +11 -2
  11. package/src/components/Badge/index.tsx +12 -6
  12. package/src/components/Card/__tests__/__snapshots__/Card.spec.tsx.snap +4 -4
  13. package/src/components/Card/__tests__/__snapshots__/StyledCard.spec.tsx.snap +4 -4
  14. package/src/components/Card/index.tsx +16 -3
  15. package/src/components/Divider/StyledDivider.tsx +1 -1
  16. package/src/components/Divider/index.tsx +20 -2
  17. package/src/components/FAB/AnimatedFABIcon.tsx +47 -0
  18. package/src/components/FAB/StyledFABContainer.tsx +14 -0
  19. package/src/components/FAB/StyledFABIcon.tsx +9 -0
  20. package/src/components/FAB/__tests__/AnimatedFABIcon.spec.tsx +20 -0
  21. package/src/components/FAB/__tests__/StyledFABContainer.spec.tsx +18 -0
  22. package/src/components/FAB/__tests__/StyledFABIcon.spec.tsx +16 -0
  23. package/src/components/FAB/__tests__/__snapshots__/AnimatedFABIcon.spec.tsx.snap +71 -0
  24. package/src/components/FAB/__tests__/__snapshots__/StyledFABContainer.spec.tsx.snap +46 -0
  25. package/src/components/FAB/__tests__/__snapshots__/StyledFABIcon.spec.tsx.snap +21 -0
  26. package/src/components/FAB/__tests__/__snapshots__/index.spec.tsx.snap +120 -0
  27. package/src/components/FAB/__tests__/index.spec.tsx +58 -0
  28. package/src/components/FAB/index.tsx +56 -0
  29. package/src/components/Icon/index.tsx +8 -8
  30. package/src/components/Typography/Text/{__test__ → __tests__}/StyledText.spec.tsx +0 -0
  31. package/src/components/Typography/Text/{__test__ → __tests__}/__snapshots__/StyledText.spec.tsx.snap +0 -0
  32. package/src/components/Typography/Text/{__test__ → __tests__}/index.spec.tsx +0 -0
  33. package/src/components/Typography/Text/index.tsx +13 -1
  34. package/src/index.ts +4 -0
  35. package/src/theme/__tests__/__snapshots__/index.spec.ts.snap +15 -2
  36. package/src/theme/components/card.ts +1 -1
  37. package/src/theme/components/divider.ts +2 -2
  38. package/src/theme/components/fab.ts +21 -0
  39. package/src/theme/global/space.ts +11 -9
  40. package/src/theme/global/typography.ts +11 -9
  41. package/src/theme/index.ts +3 -0
  42. package/src/utils/__tests__/scale.spec.ts +26 -0
  43. package/src/utils/scale.ts +10 -0
  44. package/testUtils/setup.ts +4 -0
  45. package/types/components/Card/StyledCard.d.ts +3 -0
  46. package/types/components/Card/__tests__/Card.spec.d.ts +1 -0
  47. package/types/components/Card/__tests__/StyledCard.spec.d.ts +1 -0
  48. package/types/components/Card/index.d.ts +5 -0
  49. package/types/components/Divider/StyledDivider.d.ts +7 -0
  50. package/types/components/Divider/__tests__/StyledDivider.spec.d.ts +1 -0
  51. package/types/components/Divider/index.d.ts +12 -0
  52. package/types/index.d.ts +4 -3
  53. package/types/playground/components/FAB.d.ts +2 -0
  54. package/types/src/components/Badge/index.d.ts +6 -6
  55. package/types/src/components/Card/index.d.ts +14 -1
  56. package/types/src/components/Divider/index.d.ts +11 -2
  57. package/types/src/components/FAB/AnimatedFABIcon.d.ts +6 -0
  58. package/types/src/components/FAB/StyledFABContainer.d.ts +3 -0
  59. package/types/src/components/FAB/StyledFABIcon.d.ts +3 -0
  60. package/types/src/components/FAB/__tests__/AnimatedFABIcon.spec.d.ts +1 -0
  61. package/types/src/components/FAB/__tests__/StyledFABContainer.spec.d.ts +1 -0
  62. package/types/src/components/FAB/__tests__/StyledFABIcon.spec.d.ts +1 -0
  63. package/types/src/components/FAB/__tests__/index.spec.d.ts +1 -0
  64. package/types/src/components/FAB/index.d.ts +30 -0
  65. package/types/src/components/Icon/index.d.ts +8 -8
  66. package/types/src/components/Typography/Text/__tests__/StyledText.spec.d.ts +1 -0
  67. package/types/src/components/Typography/Text/__tests__/index.spec.d.ts +1 -0
  68. package/types/src/components/Typography/Text/index.d.ts +9 -1
  69. package/types/src/index.d.ts +3 -1
  70. package/types/src/theme/components/divider.d.ts +1 -1
  71. package/types/src/theme/components/fab.d.ts +15 -0
  72. package/types/src/theme/index.d.ts +2 -0
  73. package/types/src/utils/__tests__/scale.spec.d.ts +1 -0
  74. package/types/src/utils/scale.d.ts +2 -0
  75. package/types/theme/__tests__/index.spec.d.ts +1 -0
  76. package/types/theme/components/card.d.ts +10 -0
  77. package/types/theme/components/divider.d.ts +17 -0
  78. package/types/theme/global/borders.d.ts +4 -0
  79. package/types/theme/global/colors.d.ts +2 -0
  80. package/types/theme/global/index.d.ts +5 -0
  81. package/types/theme/index.d.ts +4 -2
  82. package/types/theme/colors.d.ts +0 -24
  83. package/types/theme/components/demoStyle.d.ts +0 -11
  84. package/types/theme/space.d.ts +0 -12
  85. package/types/theme/typography.d.ts +0 -21
package/lib/index.js CHANGED
@@ -8139,7 +8139,7 @@ Processor$1["default"] = Processor$1;
8139
8139
  Root$2.registerProcessor(Processor$1);
8140
8140
  Document$1.registerProcessor(Processor$1);
8141
8141
 
8142
- var _excluded$1 = ["inputs"],
8142
+ var _excluded$4 = ["inputs"],
8143
8143
  _excluded2 = ["inputId"];
8144
8144
 
8145
8145
  var Declaration$1 = declaration;
@@ -8156,7 +8156,7 @@ function fromJSON$1(json, inputs) {
8156
8156
  });
8157
8157
 
8158
8158
  var ownInputs = json.inputs,
8159
- defaults = _objectWithoutProperties$1(json, _excluded$1);
8159
+ defaults = _objectWithoutProperties$1(json, _excluded$4);
8160
8160
 
8161
8161
  if (ownInputs) {
8162
8162
  inputs = [];
@@ -9789,6 +9789,7 @@ var palette = {
9789
9789
  greenDark30: '#017d6d',
9790
9790
  greenDark75: '#002d27',
9791
9791
  greenLight30: '#4dcaba',
9792
+ greenLight75: '#c0ece6',
9792
9793
  greenLight90: '#e6f7f5',
9793
9794
  grey: '#a3a6ac',
9794
9795
  greyDark15: '#8b8d92',
@@ -9828,6 +9829,7 @@ var palette = {
9828
9829
  redDark15: '#bd2d09',
9829
9830
  redDark30: '#9b2508',
9830
9831
  redDark75: '#380d03',
9832
+ redLight15: '#e35330',
9831
9833
  redLight30: '#e87254',
9832
9834
  redLight60: '#f2ae9d',
9833
9835
  redLight75: '#f7cdc2',
@@ -9879,30 +9881,41 @@ var systemPalette = {
9879
9881
  outline: palette.greyLight60
9880
9882
  };
9881
9883
 
9884
+ var BASE_WIDTH = 390; // Based on iPhone 13's viewport size
9885
+
9886
+ var scale = function scale(size) {
9887
+ var _Dimensions$get = require$$0$1.Dimensions.get('window'),
9888
+ width = _Dimensions$get.width,
9889
+ height = _Dimensions$get.height;
9890
+
9891
+ var shortDimension = width < height ? width : height;
9892
+ return shortDimension / BASE_WIDTH * size;
9893
+ };
9894
+
9882
9895
  var BASE$1 = 8;
9883
9896
  var space = {
9884
- xxsmall: BASE$1 * 0.25,
9885
- xsmall: BASE$1 * 0.5,
9886
- small: BASE$1,
9887
- medium: BASE$1 * 2,
9888
- large: BASE$1 * 3,
9889
- xlarge: BASE$1 * 4,
9890
- xxlarge: BASE$1 * 5,
9891
- xxxlarge: BASE$1 * 6,
9892
- xxxxlarge: BASE$1 * 7
9897
+ xxsmall: scale(BASE$1 * 0.25),
9898
+ xsmall: scale(BASE$1 * 0.5),
9899
+ small: scale(BASE$1),
9900
+ medium: scale(BASE$1 * 2),
9901
+ large: scale(BASE$1 * 3),
9902
+ xlarge: scale(BASE$1 * 4),
9903
+ xxlarge: scale(BASE$1 * 5),
9904
+ xxxlarge: scale(BASE$1 * 6),
9905
+ xxxxlarge: scale(BASE$1 * 7)
9893
9906
  };
9894
9907
 
9895
9908
  var BASE = 16;
9896
9909
  var fontSizes = {
9897
- xxxxxlarge: BASE * 2,
9898
- xxxxlarge: BASE * 1.75,
9899
- xxxlarge: BASE * 1.5,
9900
- xxlarge: BASE * 1.25,
9901
- xlarge: BASE * 1.125,
9902
- large: BASE,
9903
- medium: BASE * 0.875,
9904
- small: BASE * 0.75,
9905
- xsmall: BASE * 0.625 // 10
9910
+ xxxxxlarge: scale(BASE * 2),
9911
+ xxxxlarge: scale(BASE * 1.75),
9912
+ xxxlarge: scale(BASE * 1.5),
9913
+ xxlarge: scale(BASE * 1.25),
9914
+ xlarge: scale(BASE * 1.125),
9915
+ large: scale(BASE),
9916
+ medium: scale(BASE * 0.875),
9917
+ small: scale(BASE * 0.75),
9918
+ xsmall: scale(BASE * 0.625) // 10
9906
9919
 
9907
9920
  };
9908
9921
  var fontWeights = {
@@ -9973,7 +9986,7 @@ var getCardTheme = function getCardTheme(theme) {
9973
9986
  "default": "12px"
9974
9987
  };
9975
9988
  var padding = {
9976
- "default": "".concat(theme.space.medium, "px")
9989
+ "default": "".concat(theme.space.small, "px")
9977
9990
  };
9978
9991
  return {
9979
9992
  radii: radii,
@@ -9992,13 +10005,13 @@ var getDividerTheme = function getDividerTheme(theme) {
9992
10005
  large: "".concat(theme.space.large, "px"),
9993
10006
  xlarge: "".concat(theme.space.xlarge, "px")
9994
10007
  };
9995
- var borderWiths = {
10008
+ var borderWidths = {
9996
10009
  "default": "".concat(theme.borderWidths.base, "px")
9997
10010
  };
9998
10011
  return {
9999
10012
  colors: colors,
10000
10013
  space: space,
10001
- borderWiths: borderWiths
10014
+ borderWidths: borderWidths
10002
10015
  };
10003
10016
  };
10004
10017
 
@@ -10054,6 +10067,25 @@ var getTypographyTheme = function getTypographyTheme(theme) {
10054
10067
  };
10055
10068
  };
10056
10069
 
10070
+ var getFABTheme = function getFABTheme(theme) {
10071
+ var colors = {
10072
+ buttonBackground: theme.colors.backgroundDark,
10073
+ icon: theme.colors.invertedText
10074
+ };
10075
+ var sizes = {
10076
+ width: '64px',
10077
+ height: '64px'
10078
+ };
10079
+ var fontSizes = {
10080
+ "default": "".concat(theme.fontSizes.xxxxlarge, "px")
10081
+ };
10082
+ return {
10083
+ fontSizes: fontSizes,
10084
+ colors: colors,
10085
+ sizes: sizes
10086
+ };
10087
+ };
10088
+
10057
10089
  var getTheme = function getTheme() {
10058
10090
  var theme = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : globalTheme;
10059
10091
  return _objectSpread2(_objectSpread2({}, theme), {}, {
@@ -10062,21 +10094,22 @@ var getTheme = function getTheme() {
10062
10094
  card: getCardTheme(theme),
10063
10095
  divider: getDividerTheme(theme),
10064
10096
  icon: getIconTheme(theme),
10065
- typography: getTypographyTheme(theme)
10097
+ typography: getTypographyTheme(theme),
10098
+ fab: getFABTheme(theme)
10066
10099
  }
10067
10100
  });
10068
10101
  };
10069
10102
 
10070
10103
  var theme = getTheme();
10071
10104
 
10072
- var _templateObject$4, _templateObject2$3, _templateObject3$2, _templateObject4$2;
10105
+ var _templateObject$6, _templateObject2$3, _templateObject3$2, _templateObject4$2;
10073
10106
  var BACKGROUND_INTENTS = {
10074
10107
  success: 'successBackground',
10075
10108
  warning: 'warningBackground',
10076
10109
  danger: 'dangerBackground',
10077
10110
  info: 'infoBackground'
10078
10111
  };
10079
- var StyledView = styled(require$$0$1.View)(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteral(["\n border-width: ", ";\n border-radius: ", ";\n padding: ", ";\n\n ", ";\n"])), function (_ref) {
10112
+ var StyledView = styled(require$$0$1.View)(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteral(["\n border-width: ", ";\n border-radius: ", ";\n padding: ", ";\n\n ", ";\n"])), function (_ref) {
10080
10113
  var theme = _ref.theme;
10081
10114
  return theme.__hd__.badge.borderWidths["default"];
10082
10115
  }, function (_ref2) {
@@ -10109,23 +10142,27 @@ var StyledText$1 = styled(require$$0$1.Text)(_templateObject3$2 || (_templateObj
10109
10142
  });
10110
10143
  });
10111
10144
 
10145
+ var _excluded$3 = ["content", "intent", "style", "testID"];
10146
+
10112
10147
  var Badge = function Badge(_ref) {
10113
10148
  var content = _ref.content,
10114
10149
  _ref$intent = _ref.intent,
10115
10150
  intent = _ref$intent === void 0 ? 'info' : _ref$intent,
10116
10151
  style = _ref.style,
10117
- testID = _ref.testID;
10118
- return /*#__PURE__*/React__default["default"].createElement(StyledView, {
10119
- testID: testID,
10152
+ testID = _ref.testID,
10153
+ nativeProps = _objectWithoutProperties$1(_ref, _excluded$3);
10154
+
10155
+ return /*#__PURE__*/React__default["default"].createElement(StyledView, _extends$1({
10120
10156
  themeIntent: intent,
10121
- style: style
10122
- }, /*#__PURE__*/React__default["default"].createElement(StyledText$1, {
10157
+ style: style,
10158
+ testID: testID
10159
+ }, nativeProps), /*#__PURE__*/React__default["default"].createElement(StyledText$1, {
10123
10160
  themeIntent: intent
10124
10161
  }, content));
10125
10162
  };
10126
10163
 
10127
- var _templateObject$3;
10128
- var StyledCard = styled(require$$0$1.View)(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral(["\n border-radius: ", ";\n padding: ", ";\n"])), function (_ref) {
10164
+ var _templateObject$5;
10165
+ var StyledCard = styled(require$$0$1.View)(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteral(["\n border-radius: ", ";\n padding: ", ";\n"])), function (_ref) {
10129
10166
  var theme = _ref.theme;
10130
10167
  return theme.__hd__.card.radii["default"];
10131
10168
  }, function (_ref2) {
@@ -10137,10 +10174,10 @@ var Card = function Card(props) {
10137
10174
  return /*#__PURE__*/React__default["default"].createElement(StyledCard, props);
10138
10175
  };
10139
10176
 
10140
- var _templateObject$2, _templateObject2$2, _templateObject3$1, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1, _templateObject8$1, _templateObject9$1, _templateObject10$1, _templateObject11, _templateObject12, _templateObject13;
10141
- var StyledDivider = styled(require$$0$1.View)(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n border-bottom-width: ", ";\n border-bottom-color: ", ";\n max-width: 100%;\n\n ", "\n\n ", "\n"])), function (_ref) {
10177
+ var _templateObject$4, _templateObject2$2, _templateObject3$1, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1, _templateObject8$1, _templateObject9$1, _templateObject10$1, _templateObject11, _templateObject12, _templateObject13;
10178
+ var StyledDivider = styled(require$$0$1.View)(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteral(["\n border-bottom-width: ", ";\n border-bottom-color: ", ";\n max-width: 100%;\n\n ", "\n\n ", "\n"])), function (_ref) {
10142
10179
  var theme = _ref.theme;
10143
- return theme.__hd__.divider.borderWiths["default"];
10180
+ return theme.__hd__.divider.borderWidths["default"];
10144
10181
  }, function (_ref2) {
10145
10182
  var theme = _ref2.theme;
10146
10183
  return theme.__hd__.divider.colors["default"];
@@ -10192,13 +10229,21 @@ var StyledDivider = styled(require$$0$1.View)(_templateObject$2 || (_templateObj
10192
10229
  }
10193
10230
  });
10194
10231
 
10232
+ var _excluded$2 = ["marginHorizontal", "marginVertical", "style", "testID"];
10233
+
10195
10234
  var Divider = function Divider(_ref) {
10196
10235
  var marginHorizontal = _ref.marginHorizontal,
10197
- marginVertical = _ref.marginVertical;
10198
- return /*#__PURE__*/React__default["default"].createElement(StyledDivider, {
10236
+ marginVertical = _ref.marginVertical,
10237
+ style = _ref.style,
10238
+ testID = _ref.testID,
10239
+ nativeProps = _objectWithoutProperties$1(_ref, _excluded$2);
10240
+
10241
+ return /*#__PURE__*/React__default["default"].createElement(StyledDivider, _extends$1({
10199
10242
  themeMarginHorizontal: marginHorizontal,
10200
- themeMarginVertical: marginVertical
10201
- });
10243
+ themeMarginVertical: marginVertical,
10244
+ style: style,
10245
+ testID: testID
10246
+ }, nativeProps));
10202
10247
  };
10203
10248
 
10204
10249
  var dist = {};
@@ -19829,9 +19874,9 @@ var heroIconConfig = {
19829
19874
  preferences: preferences
19830
19875
  };
19831
19876
 
19832
- var _templateObject$1, _templateObject2$1;
19877
+ var _templateObject$3, _templateObject2$1;
19833
19878
  var HeroIcon = dist.createIconSetFromIcoMoon(heroIconConfig, 'hero-icons', 'hero-icons.ttf');
19834
- var StyledHeroIcon = styled(HeroIcon)(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n ", ";\n"])), function (_ref) {
19879
+ var StyledHeroIcon = styled(HeroIcon)(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral(["\n ", ";\n"])), function (_ref) {
19835
19880
  var themeIntent = _ref.themeIntent,
19836
19881
  themeSize = _ref.themeSize;
19837
19882
  return css(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral(["\n color: ", ";\n font-size: ", "px;\n "])), function (_ref2) {
@@ -19860,8 +19905,8 @@ var Icon = function Icon(_ref) {
19860
19905
  });
19861
19906
  };
19862
19907
 
19863
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
19864
- var StyledText = styled(require$$0$1.Text)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n ", "\n\n ", "\n\n ", "\n"])), function (_ref) {
19908
+ var _templateObject$2, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
19909
+ var StyledText = styled(require$$0$1.Text)(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n ", "\n\n ", "\n\n ", "\n"])), function (_ref) {
19865
19910
  var themeFontSize = _ref.themeFontSize,
19866
19911
  theme = _ref.theme;
19867
19912
 
@@ -19905,7 +19950,7 @@ var StyledText = styled(require$$0$1.Text)(_templateObject || (_templateObject =
19905
19950
  }
19906
19951
  });
19907
19952
 
19908
- var _excluded = ["children", "fontSize", "fontWeight", "intent"];
19953
+ var _excluded$1 = ["children", "fontSize", "fontWeight", "intent"];
19909
19954
 
19910
19955
  var Text = function Text(_ref) {
19911
19956
  var children = _ref.children,
@@ -19915,7 +19960,7 @@ var Text = function Text(_ref) {
19915
19960
  fontWeight = _ref$fontWeight === void 0 ? 'regular' : _ref$fontWeight,
19916
19961
  _ref$intent = _ref.intent,
19917
19962
  intent = _ref$intent === void 0 ? 'body' : _ref$intent,
19918
- nativeProps = _objectWithoutProperties$1(_ref, _excluded);
19963
+ nativeProps = _objectWithoutProperties$1(_ref, _excluded$1);
19919
19964
 
19920
19965
  return /*#__PURE__*/React__default["default"].createElement(StyledText, _extends$1({
19921
19966
  themeFontSize: fontSize,
@@ -19928,12 +19973,90 @@ var Typography = {
19928
19973
  Text: Text
19929
19974
  };
19930
19975
 
19976
+ var _templateObject$1;
19977
+ var StyledFABIcon = styled(Icon)(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n color: ", ";\n font-size: ", ";\n"])), function (_ref) {
19978
+ var theme = _ref.theme;
19979
+ return theme.__hd__.fab.colors.icon;
19980
+ }, function (_ref2) {
19981
+ var theme = _ref2.theme;
19982
+ return theme.__hd__.fab.fontSizes["default"];
19983
+ });
19984
+
19985
+ var _excluded = ["active"];
19986
+ var AnimatedIcons = require$$0$1.Animated.createAnimatedComponent(StyledFABIcon);
19987
+
19988
+ var AnimatedFABIcon = function AnimatedFABIcon(_ref) {
19989
+ var active = _ref.active,
19990
+ iconProps = _objectWithoutProperties$1(_ref, _excluded);
19991
+
19992
+ var rotateAnimation = React.useRef(new require$$0$1.Animated.Value(active ? 1 : 0));
19993
+ React.useEffect(function () {
19994
+ var animation = require$$0$1.Animated.timing(rotateAnimation.current, {
19995
+ toValue: active ? 1 : 0,
19996
+ useNativeDriver: true
19997
+ });
19998
+ animation.start();
19999
+ return function () {
20000
+ animation.stop();
20001
+ };
20002
+ }, [active]);
20003
+ var interpolatedRotateAnimation = rotateAnimation.current.interpolate({
20004
+ inputRange: [0, 1],
20005
+ outputRange: ['0deg', '-45deg']
20006
+ });
20007
+ return /*#__PURE__*/React__default["default"].createElement(require$$0$1.Animated.View, {
20008
+ style: require$$0$1.StyleSheet.flatten([{
20009
+ transform: [{
20010
+ rotate: interpolatedRotateAnimation
20011
+ }]
20012
+ }])
20013
+ }, /*#__PURE__*/React__default["default"].createElement(AnimatedIcons, iconProps));
20014
+ };
20015
+
20016
+ var _templateObject;
20017
+ var StyledFABContainer = styled(require$$0$1.TouchableHighlight)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n height: ", ";\n width: ", ";\n background-color: ", ";\n border-radius: 999px;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n"])), function (_ref) {
20018
+ var theme = _ref.theme;
20019
+ return theme.__hd__.fab.sizes.height;
20020
+ }, function (_ref2) {
20021
+ var theme = _ref2.theme;
20022
+ return theme.__hd__.fab.sizes.width;
20023
+ }, function (_ref3) {
20024
+ var theme = _ref3.theme;
20025
+ return theme.__hd__.fab.colors.buttonBackground;
20026
+ });
20027
+
20028
+ var FAB = function FAB(_ref) {
20029
+ var _onPress = _ref.onPress,
20030
+ icon = _ref.icon,
20031
+ animated = _ref.animated,
20032
+ testID = _ref.testID,
20033
+ active = _ref.active,
20034
+ style = _ref.style;
20035
+ return /*#__PURE__*/React__default["default"].createElement(StyledFABContainer, {
20036
+ testID: testID,
20037
+ onPress: function onPress() {
20038
+ _onPress === null || _onPress === void 0 ? void 0 : _onPress();
20039
+ },
20040
+ activeOpacity: 0.6,
20041
+ style: style
20042
+ }, animated ? /*#__PURE__*/React__default["default"].createElement(AnimatedFABIcon, {
20043
+ active: active,
20044
+ icon: icon,
20045
+ testID: "animatedFABIcon"
20046
+ }) : /*#__PURE__*/React__default["default"].createElement(StyledFABIcon, {
20047
+ icon: icon,
20048
+ testID: "styledFABIcon"
20049
+ }));
20050
+ };
20051
+
19931
20052
  exports.Badge = Badge;
19932
20053
  exports.Card = Card;
19933
20054
  exports.Divider = Divider;
20055
+ exports.FAB = FAB;
19934
20056
  exports.Icon = Icon;
19935
20057
  exports.ThemeProvider = ThemeProvider;
19936
20058
  exports.Typography = Typography;
19937
20059
  exports.getTheme = getTheme;
20060
+ exports.scale = scale;
19938
20061
  exports.theme = theme;
19939
20062
  exports.useTheme = useTheme;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hero-design/rn",
3
- "version": "7.0.4",
3
+ "version": "7.1.0",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -9,7 +9,8 @@
9
9
  "lint": "eslint src playground --ext .js,.jsx,.ts,.tsx --ignore-path ../../.gitignore",
10
10
  "type-check": "tsc --noEmit",
11
11
  "dev": "expo start",
12
- "test": "jest --runInBand --watch",
12
+ "test": "jest --runInBand",
13
+ "test:watch": "jest --runInBand --watch",
13
14
  "test:ci": "jest --runInBand --logHeapUsage",
14
15
  "build:js": "rollup -c",
15
16
  "build:types": "tsc --noEmit false --emitDeclarationOnly",
@@ -17,7 +18,7 @@
17
18
  "publish:npm": "yarn publish --access public"
18
19
  },
19
20
  "dependencies": {
20
- "@hero-design/colors": "7.0.4",
21
+ "@hero-design/colors": "7.1.0",
21
22
  "styled-components": "6.0.0-alpha.5"
22
23
  },
23
24
  "peerDependencies": {
@@ -29,7 +30,7 @@
29
30
  "@babel/core": "^7.17.5",
30
31
  "@babel/preset-env": "^7.16.11",
31
32
  "@babel/preset-react": "^7.16.7",
32
- "@babel/preset-typescript": "^7.16.7",
33
+ "@babel/preset-typescript": "^7.17.12",
33
34
  "@react-navigation/native": "^6.0.10",
34
35
  "@react-navigation/native-stack": "^6.6.2",
35
36
  "@rollup/plugin-babel": "^5.3.1",
@@ -67,6 +68,7 @@
67
68
  "react-native-vector-icons": "^9.1.0",
68
69
  "react-test-renderer": "17.0.2",
69
70
  "rollup": "^2.68.0",
71
+ "rollup-plugin-copy": "^3.4.0",
70
72
  "ts-jest": "^27.0.7",
71
73
  "typescript": "^4.5.5"
72
74
  },