react-native-action-button icon indicating copy to clipboard operation
react-native-action-button copied to clipboard

Invariant Violation: ViewPropTypes has been removed from React Native

Open ahmadsyed opened this issue 2 years ago • 1 comments

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch [email protected] for the project I'm working on.

I am upgrading RN to 0.70. As react-native removed ViewPropType ,TextPropType support, I used this method to solve these dependency problems

Here is the diff that solved my problem:

diff --git a/node_modules/react-native-action-button/ActionButton.js b/node_modules/react-native-action-button/ActionButton.js
index b8306c2..7f58c89 100644
--- a/node_modules/react-native-action-button/ActionButton.js
+++ b/node_modules/react-native-action-button/ActionButton.js
@@ -7,6 +7,8 @@ import {
   Animated,
   TouchableOpacity,
 } from "react-native";
+import {TextPropTypes} from 'deprecated-react-native-prop-types';
+
 import ActionButtonItem from "./ActionButtonItem";
 import {
   shadowStyle,
@@ -363,7 +365,7 @@ ActionButton.propTypes = {
   bgColor: PropTypes.string,
   bgOpacity: PropTypes.number,
   buttonColor: PropTypes.string,
-  buttonTextStyle: Text.propTypes.style,
+  buttonTextStyle: TextPropTypes.style,
   buttonText: PropTypes.string,
 
   offsetX: PropTypes.number,

This issue body was partially generated by patch-package.

ahmadsyed avatar Oct 08 '22 23:10 ahmadsyed

Hi, @ahmadsyed you can git clone custom package & modify react-native-action-button step

  1. Install deprecated-react-native-prop-types to your own projec
  2. clone react-native-action-button at path custom
  3. npm i --save ./path/xxxx/react-native-action-button
  4. modify follow top(@ahmadsyed)
diff --git a/node_modules/react-native-action-button/ActionButton.js b/node_modules/react-native-action-button/ActionButton.js
index b8306c2..7f58c89 100644
--- a/node_modules/react-native-action-button/ActionButton.js
+++ b/node_modules/react-native-action-button/ActionButton.js
@@ -7,6 +7,8 @@ import {
   Animated,
   TouchableOpacity,
 } from "react-native";
+import {TextPropTypes} from 'deprecated-react-native-prop-types';
+
 import ActionButtonItem from "./ActionButtonItem";
 import {
   shadowStyle,
@@ -363,7 +365,7 @@ ActionButton.propTypes = {
   bgColor: PropTypes.string,
   bgOpacity: PropTypes.number,
   buttonColor: PropTypes.string,
-  buttonTextStyle: Text.propTypes.style,
+  buttonTextStyle: TextPropTypes.style,
   buttonText: PropTypes.string,
 
   offsetX: PropTypes.number,
  1. import ActionButton from ' ./path/xxxx/react-native-action-button/ActionButton';
  2. enjoy

Base2526 avatar Oct 21 '22 03:10 Base2526